]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
Bluetooth: Initialize the transmit queue for L2CAP streaming mode
authorMat Martineau <mathewm@codeaurora.org>
Mon, 14 May 2012 21:49:27 +0000 (14:49 -0700)
committerGustavo Padovan <gustavo@padovan.org>
Tue, 15 May 2012 23:28:16 +0000 (20:28 -0300)
Commit 105bdf9ec19e729bacdb33861c74fcf3eb39eb37 introduced a
regression in L2CAP streaming mode due to rearranged initialization
code that is shared between ERTM and streaming mode.  This change
makes sure the transmit queue is initialized in both modes.

Signed-off-by: Mat Martineau <mathewm@codeaurora.org>
Acked-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
Signed-off-by: Gustavo Padovan <gustavo@padovan.org>
net/bluetooth/l2cap_core.c

index 869beb30f480e818adf7668cbb943df7b38977b2..7adfcecf7a5efebc67919a2abac052396ab6bcde 100644 (file)
@@ -2349,6 +2349,8 @@ static inline int l2cap_ertm_init(struct l2cap_chan *chan)
        chan->sdu_last_frag = NULL;
        chan->sdu_len = 0;
 
+       skb_queue_head_init(&chan->tx_q);
+
        if (chan->mode != L2CAP_MODE_ERTM)
                return 0;
 
@@ -2360,7 +2362,6 @@ static inline int l2cap_ertm_init(struct l2cap_chan *chan)
        INIT_DELAYED_WORK(&chan->ack_timer, l2cap_ack_timeout);
 
        skb_queue_head_init(&chan->srej_q);
-       skb_queue_head_init(&chan->tx_q);
 
        INIT_LIST_HEAD(&chan->srej_l);
        err = l2cap_seq_list_init(&chan->srej_list, chan->tx_win);