2021-01-28 00:46:09

by Gix, Brian

[permalink] [raw]
Subject: [PATCH BlueZ v3 1/2] advertising: Fix formater for size_t data type

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


2021-01-28 00:49:38

by bluez.test.bot

[permalink] [raw]
Subject: RE: Fix 32 bit Compiler Errors

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