Lee, Chun-Yi 947c25
From: Zhengping Jiang <jiangzp@google.com>
Lee, Chun-Yi 947c25
Date: Mon, 11 Jul 2022 17:05:30 -0700
Lee, Chun-Yi 947c25
Subject: Bluetooth: hci_sync: Fix resuming scan after suspend resume
Lee, Chun-Yi 947c25
Patch-mainline: v6.0-rc1
Lee, Chun-Yi 947c25
Git-commit: 68253f3cd715e819bc4bff2b0e6b21234e259d56
Lee, Chun-Yi 947c25
References: jsc#PED-1407
Lee, Chun-Yi 947c25
Lee, Chun-Yi 947c25
After resuming, remove setting scanning_paused to false, because it is
Lee, Chun-Yi 947c25
checked and set to false in hci_resume_scan_sync. Also move setting
Lee, Chun-Yi 947c25
the value to false before updating passive scan, because the value is
Lee, Chun-Yi 947c25
used when resuming passive scan.
Lee, Chun-Yi 947c25
Lee, Chun-Yi 947c25
Fixes: 3b42055388c30 (Bluetooth: hci_sync: Fix attempting to suspend with
Lee, Chun-Yi 947c25
unfiltered passive scan)
Lee, Chun-Yi 947c25
Lee, Chun-Yi 947c25
Signed-off-by: Zhengping Jiang <jiangzp@google.com>
Lee, Chun-Yi 947c25
Reviewed-by: Abhishek Pandit-Subedi <abhishekpandit@chromium.org>
Lee, Chun-Yi 947c25
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Lee, Chun-Yi 947c25
Acked-by: Lee, Chun-Yi <jlee@suse.com>
Lee, Chun-Yi 947c25
---
Lee, Chun-Yi 947c25
 net/bluetooth/hci_sync.c |    5 ++---
Lee, Chun-Yi 947c25
 1 file changed, 2 insertions(+), 3 deletions(-)
Lee, Chun-Yi 947c25
Lee, Chun-Yi 947c25
--- a/net/bluetooth/hci_sync.c
Lee, Chun-Yi 947c25
+++ b/net/bluetooth/hci_sync.c
Lee, Chun-Yi 947c25
@@ -5039,13 +5039,13 @@ static int hci_resume_scan_sync(struct h
Lee, Chun-Yi 947c25
 	if (!hdev->scanning_paused)
Lee, Chun-Yi 947c25
 		return 0;
Lee, Chun-Yi 947c25
 
Lee, Chun-Yi 947c25
+	hdev->scanning_paused = false;
Lee, Chun-Yi 947c25
+
Lee, Chun-Yi 947c25
 	hci_update_scan_sync(hdev);
Lee, Chun-Yi 947c25
 
Lee, Chun-Yi 947c25
 	/* Reset passive scanning to normal */
Lee, Chun-Yi 947c25
 	hci_update_passive_scan_sync(hdev);
Lee, Chun-Yi 947c25
 
Lee, Chun-Yi 947c25
-	hdev->scanning_paused = false;
Lee, Chun-Yi 947c25
-
Lee, Chun-Yi 947c25
 	return 0;
Lee, Chun-Yi 947c25
 }
Lee, Chun-Yi 947c25
 
Lee, Chun-Yi 947c25
@@ -5064,7 +5064,6 @@ int hci_resume_sync(struct hci_dev *hdev
Lee, Chun-Yi 947c25
 		return 0;
Lee, Chun-Yi 947c25
 
Lee, Chun-Yi 947c25
 	hdev->suspended = false;
Lee, Chun-Yi 947c25
-	hdev->scanning_paused = false;
Lee, Chun-Yi 947c25
 
Lee, Chun-Yi 947c25
 	/* Restore event mask */
Lee, Chun-Yi 947c25
 	hci_set_event_mask_sync(hdev);