Re: [PATCH 2/2] Bluetooth: hci_sync: Cancel AdvMonitor interleave scan when suspend

From: Luiz Augusto von Dentz
Date: Wed Aug 03 2022 - 17:32:55 EST


Hi Manish,

On Wed, Aug 3, 2022 at 1:24 PM Manish Mandlik <mmandlik@xxxxxxxxxx> wrote:
>
> Cancel interleaved scanning for advertisement monitor when suspend.
>
> Fixes: 182ee45da083 ("Bluetooth: hci_sync: Rework hci_suspend_notifier")
>
> Signed-off-by: Manish Mandlik <mmandlik@xxxxxxxxxx>
> Reviewed-by: Miao-chen Chou <mcchou@xxxxxxxxxx>
> ---
>
> net/bluetooth/hci_sync.c | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/net/bluetooth/hci_sync.c b/net/bluetooth/hci_sync.c
> index cb0c219ebe1c..33d2221b2bc4 100644
> --- a/net/bluetooth/hci_sync.c
> +++ b/net/bluetooth/hci_sync.c
> @@ -1721,6 +1721,9 @@ static bool is_interleave_scanning(struct hci_dev *hdev)
>
> static void cancel_interleave_scan(struct hci_dev *hdev)
> {
> + if (!is_interleave_scanning(hdev))
> + return;
> +
> bt_dev_dbg(hdev, "cancelling interleave scan");
>
> cancel_delayed_work_sync(&hdev->interleave_scan);
> @@ -5288,6 +5291,9 @@ int hci_suspend_sync(struct hci_dev *hdev)
> /* Pause other advertisements */
> hci_pause_advertising_sync(hdev);
>
> + /* Cancel interleaved scan */
> + cancel_interleave_scan(hdev);
> +
> /* Suspend monitor filters */
> hci_suspend_monitor_sync(hdev);
>
> --
> 2.37.1.455.g008518b4e5-goog

This will likely conflict with the following changes:

https://patchwork.kernel.org/project/bluetooth/patch/20220801171505.1271059-6-brian.gix@xxxxxxxxx/

Also I think this code shall be part of hci_scan_disable_sync so
scanning_paused apply to all scanning including interleave_scanning
and we most likely need a mgmt-tester that exercise this since
apparently that is not being tested, @Gix, Brian can you take a look
at adding a tests for it?

--
Luiz Augusto von Dentz