aboutsummaryrefslogtreecommitdiffstats
path: root/net/bluetooth/hci_core.c
diff options
context:
space:
mode:
authorAbhishek Pandit-Subedi <abhishekpandit@chromium.org>2020-09-09 16:53:59 -0700
committerMarcel Holtmann <marcel@holtmann.org>2020-09-11 09:05:08 +0200
commit3eec158d5eca7dd455118d9e00568aad2371219f (patch)
tree8001b147955c90b32512e2f1733468895b856c98 /net/bluetooth/hci_core.c
parentBluetooth: hci_intel: enable on new platform (diff)
downloadlinux-dev-3eec158d5eca7dd455118d9e00568aad2371219f.tar.xz
linux-dev-3eec158d5eca7dd455118d9e00568aad2371219f.zip
Bluetooth: Re-order clearing suspend tasks
Unregister_pm_notifier is a blocking call so suspend tasks should be cleared beforehand. Otherwise, the notifier will wait for completion before returning (and we encounter a 2s timeout on resume). Fixes: 0e9952804ec9c8 (Bluetooth: Clear suspend tasks on unregister) Signed-off-by: Abhishek Pandit-Subedi <abhishekpandit@chromium.org> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Diffstat (limited to 'net/bluetooth/hci_core.c')
-rw-r--r--net/bluetooth/hci_core.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/bluetooth/hci_core.c b/net/bluetooth/hci_core.c
index efc0fe2b47da..be9cdf5dabe5 100644
--- a/net/bluetooth/hci_core.c
+++ b/net/bluetooth/hci_core.c
@@ -3794,8 +3794,8 @@ void hci_unregister_dev(struct hci_dev *hdev)
cancel_work_sync(&hdev->power_on);
- unregister_pm_notifier(&hdev->suspend_notifier);
hci_suspend_clear_tasks(hdev);
+ unregister_pm_notifier(&hdev->suspend_notifier);
cancel_work_sync(&hdev->suspend_prepare);
hci_dev_do_close(hdev);