[PATCH v3] Bluetooth: mgmt: Fix MGMT add advmon with RSSI command

Howard Chung posted 1 patch 2 years, 11 months ago
net/bluetooth/mgmt.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
[PATCH v3] Bluetooth: mgmt: Fix MGMT add advmon with RSSI command
Posted by Howard Chung 2 years, 11 months ago
The MGMT command: MGMT_OP_ADD_ADV_PATTERNS_MONITOR_RSSI uses variable
length argument. This causes host not able to register advmon with rssi.

This patch has been locally tested by adding monitor with rssi via
btmgmt on a kernel 6.1 machine.

Reviewed-by: Archie Pusaka <apusaka@chromium.org>
Fixes: b338d91703fa ("Bluetooth: Implement support for Mesh")
Signed-off-by: Howard Chung <howardchung@google.com>
---

Changes in v3:
- Moved commit-notes to commit message
- Fixed a typo

Changes in v2:
- Fixed git user name
- Included commit notes for the test step.

 net/bluetooth/mgmt.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/net/bluetooth/mgmt.c b/net/bluetooth/mgmt.c
index 39589f864ea7..249dc6777fb4 100644
--- a/net/bluetooth/mgmt.c
+++ b/net/bluetooth/mgmt.c
@@ -9357,7 +9357,8 @@ static const struct hci_mgmt_handler mgmt_handlers[] = {
 	{ add_ext_adv_data,        MGMT_ADD_EXT_ADV_DATA_SIZE,
 						HCI_MGMT_VAR_LEN },
 	{ add_adv_patterns_monitor_rssi,
-				   MGMT_ADD_ADV_PATTERNS_MONITOR_RSSI_SIZE },
+				   MGMT_ADD_ADV_PATTERNS_MONITOR_RSSI_SIZE,
+						HCI_MGMT_VAR_LEN },
 	{ set_mesh,                MGMT_SET_MESH_RECEIVER_SIZE,
 						HCI_MGMT_VAR_LEN },
 	{ mesh_features,           MGMT_MESH_READ_FEATURES_SIZE },
-- 
2.40.0.rc2.332.ga46443480c-goog
Re: [PATCH v3] Bluetooth: mgmt: Fix MGMT add advmon with RSSI command
Posted by patchwork-bot+bluetooth@kernel.org 2 years, 11 months ago
Hello:

This patch was applied to bluetooth/bluetooth-next.git (master)
by Luiz Augusto von Dentz <luiz.von.dentz@intel.com>:

On Thu, 16 Mar 2023 18:11:38 +0800 you wrote:
> The MGMT command: MGMT_OP_ADD_ADV_PATTERNS_MONITOR_RSSI uses variable
> length argument. This causes host not able to register advmon with rssi.
> 
> This patch has been locally tested by adding monitor with rssi via
> btmgmt on a kernel 6.1 machine.
> 
> Reviewed-by: Archie Pusaka <apusaka@chromium.org>
> Fixes: b338d91703fa ("Bluetooth: Implement support for Mesh")
> Signed-off-by: Howard Chung <howardchung@google.com>
> 
> [...]

Here is the summary with links:
  - [v3] Bluetooth: mgmt: Fix MGMT add advmon with RSSI command
    https://git.kernel.org/bluetooth/bluetooth-next/c/8abee3773899

You are awesome, thank you!
-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
Re: [PATCH v3] Bluetooth: mgmt: Fix MGMT add advmon with RSSI command
Posted by Luiz Augusto von Dentz 2 years, 11 months ago
Hi Howard,

On Thu, Mar 16, 2023 at 3:11 AM Howard Chung <howardchung@google.com> wrote:
>
> The MGMT command: MGMT_OP_ADD_ADV_PATTERNS_MONITOR_RSSI uses variable
> length argument. This causes host not able to register advmon with rssi.

There is a way to prevent these regression, which would be to actually
implement tests for these commands in the likes of mgmt-tester so we
can catch regressions via CI, so I hope to see some work in this
direction.

> This patch has been locally tested by adding monitor with rssi via
> btmgmt on a kernel 6.1 machine.
>
> Reviewed-by: Archie Pusaka <apusaka@chromium.org>
> Fixes: b338d91703fa ("Bluetooth: Implement support for Mesh")
> Signed-off-by: Howard Chung <howardchung@google.com>
> ---
>
> Changes in v3:
> - Moved commit-notes to commit message
> - Fixed a typo
>
> Changes in v2:
> - Fixed git user name
> - Included commit notes for the test step.
>
>  net/bluetooth/mgmt.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/net/bluetooth/mgmt.c b/net/bluetooth/mgmt.c
> index 39589f864ea7..249dc6777fb4 100644
> --- a/net/bluetooth/mgmt.c
> +++ b/net/bluetooth/mgmt.c
> @@ -9357,7 +9357,8 @@ static const struct hci_mgmt_handler mgmt_handlers[] = {
>         { add_ext_adv_data,        MGMT_ADD_EXT_ADV_DATA_SIZE,
>                                                 HCI_MGMT_VAR_LEN },
>         { add_adv_patterns_monitor_rssi,
> -                                  MGMT_ADD_ADV_PATTERNS_MONITOR_RSSI_SIZE },
> +                                  MGMT_ADD_ADV_PATTERNS_MONITOR_RSSI_SIZE,
> +                                               HCI_MGMT_VAR_LEN },
>         { set_mesh,                MGMT_SET_MESH_RECEIVER_SIZE,
>                                                 HCI_MGMT_VAR_LEN },
>         { mesh_features,           MGMT_MESH_READ_FEATURES_SIZE },
> --
> 2.40.0.rc2.332.ga46443480c-goog
>


-- 
Luiz Augusto von Dentz