diff options
author | Gustavo F. Padovan <padovan@profusion.mobi> | 2011-12-14 21:50:02 -0500 |
---|---|---|
committer | Gustavo F. Padovan <padovan@profusion.mobi> | 2011-12-18 14:07:57 -0500 |
commit | 3eff45eaf81780dad25c167bbaafa7d25ae407da (patch) | |
tree | f20254e5ded21e81b0313b1f8b56dd0165a09821 /net/bluetooth/hci_event.c | |
parent | c347b765fe70d718c721cd6d0b979cfbaed83125 (diff) |
Bluetooth: convert tx_task to workqueue
This should simplify Bluetooth core processing a lot.
Acked-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
Diffstat (limited to 'net/bluetooth/hci_event.c')
-rw-r--r-- | net/bluetooth/hci_event.c | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c index 23466bb48423..74f758363c2d 100644 --- a/net/bluetooth/hci_event.c +++ b/net/bluetooth/hci_event.c | |||
@@ -2239,8 +2239,6 @@ static inline void hci_num_comp_pkts_evt(struct hci_dev *hdev, struct sk_buff *s | |||
2239 | return; | 2239 | return; |
2240 | } | 2240 | } |
2241 | 2241 | ||
2242 | tasklet_disable(&hdev->tx_task); | ||
2243 | |||
2244 | for (i = 0, ptr = (__le16 *) skb->data; i < ev->num_hndl; i++) { | 2242 | for (i = 0, ptr = (__le16 *) skb->data; i < ev->num_hndl; i++) { |
2245 | struct hci_conn *conn; | 2243 | struct hci_conn *conn; |
2246 | __u16 handle, count; | 2244 | __u16 handle, count; |
@@ -2274,9 +2272,7 @@ static inline void hci_num_comp_pkts_evt(struct hci_dev *hdev, struct sk_buff *s | |||
2274 | } | 2272 | } |
2275 | } | 2273 | } |
2276 | 2274 | ||
2277 | tasklet_schedule(&hdev->tx_task); | 2275 | queue_work(hdev->workqueue, &hdev->tx_work); |
2278 | |||
2279 | tasklet_enable(&hdev->tx_task); | ||
2280 | } | 2276 | } |
2281 | 2277 | ||
2282 | static inline void hci_mode_change_evt(struct hci_dev *hdev, struct sk_buff *skb) | 2278 | static inline void hci_mode_change_evt(struct hci_dev *hdev, struct sk_buff *skb) |