Return-Path: From: Andrei Emeltchenko To: linux-bluetooth@vger.kernel.org Subject: [RFCv4 05/30] Bluetooth: Lock sk only if exist Date: Thu, 15 Mar 2012 14:29:56 +0200 Message-Id: <1331814621-13905-6-git-send-email-Andrei.Emeltchenko.news@gmail.com> In-Reply-To: <1331814621-13905-1-git-send-email-Andrei.Emeltchenko.news@gmail.com> References: <1331814621-13905-1-git-send-email-Andrei.Emeltchenko.news@gmail.com> Sender: linux-bluetooth-owner@vger.kernel.org List-ID: From: Andrei Emeltchenko Signed-off-by: Andrei Emeltchenko --- net/bluetooth/l2cap_core.c | 8 ++++++-- 1 files changed, 6 insertions(+), 2 deletions(-) diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c index 779f819..e8855cc 100644 --- a/net/bluetooth/l2cap_core.c +++ b/net/bluetooth/l2cap_core.c @@ -212,9 +212,13 @@ static inline void l2cap_state_change(struct l2cap_chan *chan, int state, int er { struct sock *sk = chan->sk; - lock_sock(sk); + if (sk) + lock_sock(sk); + __l2cap_state_change(chan, state, err); - release_sock(sk); + + if (sk) + release_sock(sk); } void __l2cap_chan_set_err(struct l2cap_chan *chan, int err) -- 1.7.9.1