From 09668ce12c8e67731b746984bf8cdde3212d8a44 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 24 Mar 2011 20:16:42 +0100 Subject: [PATCH] --- yaml --- r: 243691 b: refs/heads/master c: b77dcf8460ae57d4eb9fd3633eb4f97b8fb20716 h: refs/heads/master i: 243689: 3efec40fb5b3fb71b5e0d61935b230882ae10700 243687: 926ebaa84a1c09c97662b6883206e6b755cf8995 v: v3 --- [refs] | 2 +- trunk/net/bluetooth/hci_core.c | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 4d88d4760337..76339fb84652 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: a0cc9a1b5712ea52aaa4e7abfa0ec2dbe0d820ff +refs/heads/master: b77dcf8460ae57d4eb9fd3633eb4f97b8fb20716 diff --git a/trunk/net/bluetooth/hci_core.c b/trunk/net/bluetooth/hci_core.c index 92b48e257b89..2216620ff296 100644 --- a/trunk/net/bluetooth/hci_core.c +++ b/trunk/net/bluetooth/hci_core.c @@ -587,6 +587,9 @@ static int hci_dev_do_close(struct hci_dev *hdev) hci_req_cancel(hdev, ENODEV); hci_req_lock(hdev); + /* Stop timer, it might be running */ + del_timer_sync(&hdev->cmd_timer); + if (!test_and_clear_bit(HCI_UP, &hdev->flags)) { hci_req_unlock(hdev); return 0; @@ -626,7 +629,6 @@ static int hci_dev_do_close(struct hci_dev *hdev) /* Drop last sent command */ if (hdev->sent_cmd) { - del_timer_sync(&hdev->cmd_timer); kfree_skb(hdev->sent_cmd); hdev->sent_cmd = NULL; }