All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH BlueZ v3 0/2] Fix 32 bit Compiler Errors
@ 2021-01-27 23:10 Brian Gix
  2021-01-27 23:10 ` [PATCH BlueZ v3 1/2] advertising: Fix formater for size_t data type Brian Gix
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Brian Gix @ 2021-01-27 23:10 UTC (permalink / raw)
  To: linux-bluetooth; +Cc: luiz.dentz, brian.gix, denkenz

In a couple places the sizeof() macro has been assumed to return a
(long unsigned) value, and so the string formater %lu has been used to
print out warnings derived from this assumption. While correct on 64 bit
systems, this is an incorrect assumption on 32 bit systems.

These two changes explicitly cast the sizeof return to long in the
affected cases.

v2: Fix bluez.test.bot warnings

v3: Just use %zu format descriptor, which should be architecture agnostic.

Brian Gix (2):
  advertising: Fix formater for size_t data type
  tools/mgmt-tester: Fix formatter for size_t value

 src/advertising.c   | 2 +-
 tools/mgmt-tester.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

-- 
2.25.4


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH BlueZ v3 1/2] advertising: Fix formater for size_t data type
  2021-01-27 23:10 [PATCH BlueZ v3 0/2] Fix 32 bit Compiler Errors Brian Gix
@ 2021-01-27 23:10 ` Brian Gix
  2021-01-27 23:44   ` Fix 32 bit Compiler Errors bluez.test.bot
  2021-01-27 23:10 ` [PATCH BlueZ v3 2/2] tools/mgmt-tester: Fix formatter for size_t value Brian Gix
  2021-01-28 22:20 ` [PATCH BlueZ v3 0/2] Fix 32 bit Compiler Errors Gix, Brian
  2 siblings, 1 reply; 5+ messages in thread
From: Brian Gix @ 2021-01-27 23:10 UTC (permalink / raw)
  To: linux-bluetooth; +Cc: luiz.dentz, brian.gix, denkenz

On some 32 bit systems sizeof does not return (unsigned long). The
size_t formater %zu handles this across architectures.

Fixes the error:

In file included from src/advertising.c:30:
src/advertising.c: In function ‘read_controller_cap_complete’:
src/log.h:60:20: error: format ‘%lu’ expects argument of type ‘long
unsigned int’, but argument 5 has type ‘unsigned int’ [-Werror=format=]
   60 |  btd_error(0xffff, "%s:%s() " fmt, __FILE__, __func__, ## arg)
      |                    ^~~~~~~~~~

src/advertising.c:1757:3: note: in expansion of macro ‘error’
 1757 |   error("Controller capabilities malformed, size %lu != %u",
      |   ^~~~~
src/advertising.c:1757:52: note: format string is defined here
 1757 |   error("Controller capabilities malformed, size %lu != %u",
      |                                                  ~~^
      |                                                    |
      |                                             long unsigned int
      |                                                  %u
---
 src/advertising.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/advertising.c b/src/advertising.c
index 4f5123fa1..15a343e52 100644
--- a/src/advertising.c
+++ b/src/advertising.c
@@ -1754,7 +1754,7 @@ static void read_controller_cap_complete(uint8_t status, uint16_t length,
 	}
 
 	if (sizeof(rp->cap_len) + rp->cap_len != length) {
-		error("Controller capabilities malformed, size %lu != %u",
+		error("Controller capabilities malformed, size %zu != %u",
 				sizeof(rp->cap_len) + rp->cap_len, length);
 		return;
 	}
-- 
2.25.4


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH BlueZ v3 2/2] tools/mgmt-tester: Fix formatter for size_t value
  2021-01-27 23:10 [PATCH BlueZ v3 0/2] Fix 32 bit Compiler Errors Brian Gix
  2021-01-27 23:10 ` [PATCH BlueZ v3 1/2] advertising: Fix formater for size_t data type Brian Gix
@ 2021-01-27 23:10 ` Brian Gix
  2021-01-28 22:20 ` [PATCH BlueZ v3 0/2] Fix 32 bit Compiler Errors Gix, Brian
  2 siblings, 0 replies; 5+ messages in thread
From: Brian Gix @ 2021-01-27 23:10 UTC (permalink / raw)
  To: linux-bluetooth; +Cc: luiz.dentz, brian.gix, denkenz

On 32 bit systems, sizeof macro doesn't always return (unsigned long),
and the %zu formatter specifically handles size_t.

Fix following error:

tools/mgmt-tester.c: In function ‘read_50_controller_cap_complete’:
tools/mgmt-tester.c:9124:58: error: format ‘%lu’ expects argument of type
‘long unsigned int’, but argument 2 has type ‘unsigned int’ [-Werror=format=]

 9124 |   tester_warn("Controller capabilities malformed, size %lu != %u",
      |                                                        ~~^
      |                                                          |
      |                                                  long unsigned int
      |                                                        %u
 9125 |     sizeof(rp->cap_len) + rp->cap_len, length);
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                         |
      |                     unsigned int
---
 tools/mgmt-tester.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/mgmt-tester.c b/tools/mgmt-tester.c
index fe73a6d89..bb9fb0b9c 100644
--- a/tools/mgmt-tester.c
+++ b/tools/mgmt-tester.c
@@ -9121,7 +9121,7 @@ static void read_50_controller_cap_complete(uint8_t status, uint16_t length,
 	}
 
 	if (sizeof(rp->cap_len) + rp->cap_len != length) {
-		tester_warn("Controller capabilities malformed, size %lu != %u",
+		tester_warn("Controller capabilities malformed, size %zu != %u",
 				sizeof(rp->cap_len) + rp->cap_len, length);
 		tester_test_failed();
 	}
-- 
2.25.4


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* RE: Fix 32 bit Compiler Errors
  2021-01-27 23:10 ` [PATCH BlueZ v3 1/2] advertising: Fix formater for size_t data type Brian Gix
@ 2021-01-27 23:44   ` bluez.test.bot
  0 siblings, 0 replies; 5+ messages in thread
From: bluez.test.bot @ 2021-01-27 23:44 UTC (permalink / raw)
  To: linux-bluetooth, brian.gix

[-- Attachment #1: Type: text/plain, Size: 2175 bytes --]

This is automated email and please do not reply to this email!

Dear submitter,

Thank you for submitting the patches to the linux bluetooth mailing list.
This is a CI test results with your patch series:
PW Link:https://patchwork.kernel.org/project/bluetooth/list/?series=423259

---Test result---

##############################
Test: CheckPatch - FAIL
Output:
advertising: Fix formater for size_t data type
WARNING:COMMIT_LOG_LONG_LINE: Possible unwrapped commit description (prefer a maximum 75 chars per line)
#17: 
unsigned int’, but argument 5 has type ‘unsigned int’ [-Werror=format=]

- total: 0 errors, 1 warnings, 8 lines checked

NOTE: For some of the reported defects, checkpatch may be able to
      mechanically convert to the typical style using --fix or --fix-inplace.

"[PATCH] advertising: Fix formater for size_t data type" has style problems, please review.

NOTE: Ignored message types: COMMIT_MESSAGE COMPLEX_MACRO CONST_STRUCT FILE_PATH_CHANGES MISSING_SIGN_OFF PREFER_PACKED SPLIT_STRING SSCANF_TO_KSTRTO

NOTE: If any of the errors are false positives, please report
      them to the maintainer, see CHECKPATCH in MAINTAINERS.

tools/mgmt-tester: Fix formatter for size_t value
WARNING:COMMIT_LOG_LONG_LINE: Possible unwrapped commit description (prefer a maximum 75 chars per line)
#16: 
‘long unsigned int’, but argument 2 has type ‘unsigned int’ [-Werror=format=]

- total: 0 errors, 1 warnings, 8 lines checked

NOTE: For some of the reported defects, checkpatch may be able to
      mechanically convert to the typical style using --fix or --fix-inplace.

"[PATCH] tools/mgmt-tester: Fix formatter for size_t value" has style problems, please review.

NOTE: Ignored message types: COMMIT_MESSAGE COMPLEX_MACRO CONST_STRUCT FILE_PATH_CHANGES MISSING_SIGN_OFF PREFER_PACKED SPLIT_STRING SSCANF_TO_KSTRTO

NOTE: If any of the errors are false positives, please report
      them to the maintainer, see CHECKPATCH in MAINTAINERS.


##############################
Test: CheckGitLint - PASS

##############################
Test: CheckBuild - PASS

##############################
Test: MakeCheck - PASS



---
Regards,
Linux Bluetooth


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH BlueZ v3 0/2] Fix 32 bit Compiler Errors
  2021-01-27 23:10 [PATCH BlueZ v3 0/2] Fix 32 bit Compiler Errors Brian Gix
  2021-01-27 23:10 ` [PATCH BlueZ v3 1/2] advertising: Fix formater for size_t data type Brian Gix
  2021-01-27 23:10 ` [PATCH BlueZ v3 2/2] tools/mgmt-tester: Fix formatter for size_t value Brian Gix
@ 2021-01-28 22:20 ` Gix, Brian
  2 siblings, 0 replies; 5+ messages in thread
From: Gix, Brian @ 2021-01-28 22:20 UTC (permalink / raw)
  To: linux-bluetooth; +Cc: luiz.dentz, denkenz

Applied

On Wed, 2021-01-27 at 15:10 -0800, Brian Gix wrote:
> In a couple places the sizeof() macro has been assumed to return a
> (long unsigned) value, and so the string formater %lu has been used to
> print out warnings derived from this assumption. While correct on 64 bit
> systems, this is an incorrect assumption on 32 bit systems.
> 
> These two changes explicitly cast the sizeof return to long in the
> affected cases.
> 
> v2: Fix bluez.test.bot warnings
> 
> v3: Just use %zu format descriptor, which should be architecture agnostic.
> 
> Brian Gix (2):
>   advertising: Fix formater for size_t data type
>   tools/mgmt-tester: Fix formatter for size_t value
> 
>  src/advertising.c   | 2 +-
>  tools/mgmt-tester.c | 2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)
> 

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2021-01-28 22:21 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-27 23:10 [PATCH BlueZ v3 0/2] Fix 32 bit Compiler Errors Brian Gix
2021-01-27 23:10 ` [PATCH BlueZ v3 1/2] advertising: Fix formater for size_t data type Brian Gix
2021-01-27 23:44   ` Fix 32 bit Compiler Errors bluez.test.bot
2021-01-27 23:10 ` [PATCH BlueZ v3 2/2] tools/mgmt-tester: Fix formatter for size_t value Brian Gix
2021-01-28 22:20 ` [PATCH BlueZ v3 0/2] Fix 32 bit Compiler Errors Gix, Brian

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.