Bluetooth: Add a new workqueue for hci_request operations
authorJohan Hedberg <johan.hedberg@intel.com>
Mon, 14 Jan 2013 20:33:50 +0000 (22:33 +0200)
committerGustavo Padovan <gustavo.padovan@collabora.co.uk>
Fri, 18 Jan 2013 04:54:21 +0000 (02:54 -0200)
commit6ead1bbc381a674c20f227dbe6f3a8c6f67ce7a2
treed7b1a11d2a20c8d36bb9ce39467cecbc7735a640
parent52e0b011e29f36bc5c02ea3adbf4d864a38373de
Bluetooth: Add a new workqueue for hci_request operations

The hci_request function is blocking and cannot be called through the
usual per-HCI device workqueue (hdev->workqueue). While hci_request is
in progress any other work from the queue, including sending HCI
commands to the controller would be blocked and eventually cause the
hci_request call to time out.

This patch adds a second workqueue to be used by operations needing
hci_request and thereby avoiding issues with blocking other workqueue
users.

Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
Acked-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
include/net/bluetooth/hci_core.h
net/bluetooth/hci_core.c