Message ID | 20230518232049.1656554-1-luiz.dentz@gmail.com |
---|---|
State | New |
Headers | show |
Series | [BlueZ,1/2] monitor: Fix not parsing BT_HCI_EVT_NUM_COMPLETED_PACKETS properly | expand |
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=749061 ---Test result--- Test Summary: CheckPatch FAIL 1.81 seconds GitLint PASS 0.73 seconds BuildEll PASS 26.98 seconds BluezMake PASS 866.74 seconds MakeCheck PASS 11.87 seconds MakeDistcheck PASS 152.15 seconds CheckValgrind PASS 248.23 seconds CheckSmatch WARNING 335.57 seconds bluezmakeextell PASS 100.97 seconds IncrementalBuild PASS 1428.68 seconds ScanBuild WARNING 1029.29 seconds Details ############################## Test: CheckPatch - FAIL Desc: Run checkpatch.pl script Output: [BlueZ,2/2] monitor: Add latency when decoding BT_HCI_EVT_NUM_COMPLETED_PACKETS WARNING:SPACING: Unnecessary space before function pointer arguments #1434: FILE: monitor/packet.c:11639: + void (*func) (struct timeval *tv, uint16_t index, const void *data, WARNING:SPACING: Unnecessary space before function pointer arguments #1506: FILE: monitor/packet.c:11826: + void (*func) (struct timeval *tv, uint16_t index, const void *data, WARNING:SPACING: Unnecessary space before function pointer arguments #1591: FILE: monitor/vendor.h:28: + void (*evt_func) (struct timeval *tv, uint16_t index, /github/workspace/src/src/13247515.patch total: 0 errors, 3 warnings, 1358 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. /github/workspace/src/src/13247515.patch has style problems, please review. NOTE: Ignored message types: COMMIT_MESSAGE COMPLEX_MACRO CONST_STRUCT FILE_PATH_CHANGES MISSING_SIGN_OFF PREFER_PACKED SPDX_LICENSE_TAG 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: CheckSmatch - WARNING Desc: Run smatch tool with source Output: monitor/packet.c: note: in included file:monitor/display.h:82:26: warning: Variable length array is used.monitor/packet.c:1805:26: warning: Variable length array is used.monitor/packet.c: note: in included file:monitor/bt.h:3552:52: warning: array of flexible structuresmonitor/bt.h:3540:40: warning: array of flexible structuresmonitor/msft.c: note: in included file:monitor/msft.h:88:44: warning: array of flexible structuresmonitor/packet.c: note: in included file:monitor/display.h:82:26: warning: Variable length array is used.monitor/packet.c:1805:26: warning: Variable length array is used.monitor/packet.c: note: in included file:monitor/bt.h:3552:52: warning: array of flexible structuresmonitor/bt.h:3540:40: warning: array of flexible structures ############################## Test: ScanBuild - WARNING Desc: Run Scan Build Output: monitor/packet.c:12356:2: warning: Null pointer passed to 2nd parameter expecting 'nonnull' memcpy(tx, tv, sizeof(*tv)); ^~~~~~~~~~~~~~~~~~~~~~~~~~~ 1 warning generated. --- Regards, Linux Bluetooth
Hello: This series was applied to bluetooth/bluez.git (master) by Luiz Augusto von Dentz <luiz.von.dentz@intel.com>: On Thu, 18 May 2023 16:20:48 -0700 you wrote: > From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com> > > BT_HCI_EVT_NUM_COMPLETED_PACKETS may contain multiple handles but the > code was just parsing the very first one. > --- > monitor/packet.c | 25 +++++++++++++++++++++---- > 1 file changed, 21 insertions(+), 4 deletions(-) Here is the summary with links: - [BlueZ,1/2] monitor: Fix not parsing BT_HCI_EVT_NUM_COMPLETED_PACKETS properly https://git.kernel.org/pub/scm/bluetooth/bluez.git/?id=e99fbb5e4eea - [BlueZ,2/2] monitor: Add latency when decoding BT_HCI_EVT_NUM_COMPLETED_PACKETS https://git.kernel.org/pub/scm/bluetooth/bluez.git/?id=cd176eb2d444 You are awesome, thank you!
diff --git a/monitor/packet.c b/monitor/packet.c index aafb81eefb13..39d1f70310e4 100644 --- a/monitor/packet.c +++ b/monitor/packet.c @@ -10293,14 +10293,31 @@ static void role_change_evt(uint16_t index, const void *data, uint8_t size) static void num_completed_packets_evt(uint16_t index, const void *data, uint8_t size) { + struct iovec iov = { (void *)data, size}; const struct bt_hci_evt_num_completed_packets *evt = data; + int i; + + iov_pull(&iov, 1); print_field("Num handles: %d", evt->num_handles); - print_handle(evt->handle); - print_field("Count: %d", le16_to_cpu(evt->count)); - if (size > sizeof(*evt)) - packet_hexdump(data + sizeof(*evt), size - sizeof(*evt)); + for (i = 0; i < evt->num_handles; i++) { + uint16_t handle; + uint16_t count; + + if (!util_iov_pull_le16(&iov, &handle)) + break; + + print_handle_native(handle); + + if (!util_iov_pull_le16(&iov, &count)) + break; + + print_field("Count: %d", le16_to_cpu(evt->count)); + } + + if (iov.iov_len) + packet_hexdump(iov.iov_base, iov.iov_len); } static void mode_change_evt(uint16_t index, const void *data, uint8_t size)
From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com> BT_HCI_EVT_NUM_COMPLETED_PACKETS may contain multiple handles but the code was just parsing the very first one. --- monitor/packet.c | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-)