Bluetooth: Fix adv_work delay
authorAndre Guedes <andre.guedes@openbossa.org>
Mon, 2 Jan 2012 22:18:10 +0000 (19:18 -0300)
committerGustavo F. Padovan <padovan@profusion.mobi>
Tue, 3 Jan 2012 00:30:09 +0000 (22:30 -0200)
This patch fixes the adv_work delay. It should be set to ADV_
CLEAR_TIMEOUT instead of (jiffies + ADV_CLEAR_TIMEOUT) since
queue_delayed_work() receives the number of jiffies to wait
before queueing. It also removes the unnecessary cancel_delayed_
work_sync() call in case LE scan has been disabled.

Signed-off-by: Andre Guedes <andre.guedes@openbossa.org>
Acked-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>

net/bluetooth/hci_event.c

index 10152d2..444ca41 100644 (file)
@@ -1054,9 +1054,8 @@ static void hci_cc_le_set_scan_enable(struct hci_dev *hdev,
        case LE_SCANNING_DISABLED:
                clear_bit(HCI_LE_SCAN, &hdev->dev_flags);
 
-               cancel_delayed_work_sync(&hdev->adv_work);
                queue_delayed_work(hdev->workqueue, &hdev->adv_work,
-                                                jiffies + ADV_CLEAR_TIMEOUT);
+                                                       ADV_CLEAR_TIMEOUT);
                break;
 
        default: