Bluetooth: Use system workqueue to schedule power_on
authorGustavo F. Padovan <padovan@profusion.mobi>
Sun, 18 Dec 2011 14:40:32 +0000 (12:40 -0200)
committerGustavo F. Padovan <padovan@profusion.mobi>
Sun, 18 Dec 2011 19:07:58 +0000 (17:07 -0200)
hdev->workqueue should be only for rx/tx, so move this one out.

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

net/bluetooth/hci_core.c
net/bluetooth/mgmt.c

index dcbb765..b250685 100644 (file)
@@ -1522,7 +1522,7 @@ int hci_register_dev(struct hci_dev *hdev)
 
        set_bit(HCI_AUTO_OFF, &hdev->flags);
        set_bit(HCI_SETUP, &hdev->flags);
-       queue_work(hdev->workqueue, &hdev->power_on);
+       schedule_work(&hdev->power_on);
 
        hci_notify(hdev, HCI_DEV_REG);
 
index f4af659..ffd1c01 100644 (file)
@@ -415,7 +415,7 @@ static int set_powered(struct sock *sk, u16 index, unsigned char *data, u16 len)
        }
 
        if (cp->val)
-               queue_work(hdev->workqueue, &hdev->power_on);
+               schedule_work(&hdev->power_on);
        else
                schedule_work(&hdev->power_off.work);