Bluetooth: Fix lockdep warning with skb list lock
This is a regression acctually, caused by the first patch series for creating a formal strcut l2cap_chan. Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
This commit is contained in:
parent
311bb895e3
commit
2ead70b839
@ -236,6 +236,10 @@ void l2cap_chan_del(struct l2cap_chan *chan, int err)
|
|||||||
} else
|
} else
|
||||||
sk->sk_state_change(sk);
|
sk->sk_state_change(sk);
|
||||||
|
|
||||||
|
if (!(l2cap_pi(sk)->conf_state & L2CAP_CONF_OUTPUT_DONE &&
|
||||||
|
l2cap_pi(sk)->conf_state & L2CAP_CONF_INPUT_DONE))
|
||||||
|
goto free;
|
||||||
|
|
||||||
skb_queue_purge(TX_QUEUE(sk));
|
skb_queue_purge(TX_QUEUE(sk));
|
||||||
|
|
||||||
if (l2cap_pi(sk)->mode == L2CAP_MODE_ERTM) {
|
if (l2cap_pi(sk)->mode == L2CAP_MODE_ERTM) {
|
||||||
@ -254,6 +258,7 @@ void l2cap_chan_del(struct l2cap_chan *chan, int err)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
free:
|
||||||
kfree(chan);
|
kfree(chan);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user