]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
Bluetooth: hci_sync: Fix resuming scan after suspend resume
authorZhengping Jiang <jiangzp@google.com>
Tue, 12 Jul 2022 00:05:30 +0000 (17:05 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 17 Aug 2022 12:41:11 +0000 (14:41 +0200)
[ Upstream commit 68253f3cd715e819bc4bff2b0e6b21234e259d56 ]

After resuming, remove setting scanning_paused to false, because it is
checked and set to false in hci_resume_scan_sync. Also move setting
the value to false before updating passive scan, because the value is
used when resuming passive scan.

Fixes: 3b42055388c30 (Bluetooth: hci_sync: Fix attempting to suspend with
unfiltered passive scan)

Signed-off-by: Zhengping Jiang <jiangzp@google.com>
Reviewed-by: Abhishek Pandit-Subedi <abhishekpandit@chromium.org>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
net/bluetooth/hci_sync.c

index 9e2a42299fc09db32a275edff23cb0df8fc73c40..99ef15167a81ec096c13bf221dad8e6cb909756c 100644 (file)
@@ -5008,13 +5008,13 @@ static int hci_resume_scan_sync(struct hci_dev *hdev)
        if (!hdev->scanning_paused)
                return 0;
 
+       hdev->scanning_paused = false;
+
        hci_update_scan_sync(hdev);
 
        /* Reset passive scanning to normal */
        hci_update_passive_scan_sync(hdev);
 
-       hdev->scanning_paused = false;
-
        return 0;
 }
 
@@ -5033,7 +5033,6 @@ int hci_resume_sync(struct hci_dev *hdev)
                return 0;
 
        hdev->suspended = false;
-       hdev->scanning_paused = false;
 
        /* Restore event mask */
        hci_set_event_mask_sync(hdev);