提交 2ead70b8 编写于 作者: G Gustavo F. Padovan

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: NGustavo F. Padovan <padovan@profusion.mobi>
上级 311bb895
...@@ -236,6 +236,10 @@ void l2cap_chan_del(struct l2cap_chan *chan, int err) ...@@ -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) ...@@ -254,6 +258,7 @@ void l2cap_chan_del(struct l2cap_chan *chan, int err)
} }
} }
free:
kfree(chan); kfree(chan);
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册