diff options
Diffstat (limited to 'net/bluetooth/l2cap_core.c')
-rw-r--r-- | net/bluetooth/l2cap_core.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c index c0640b73c628..0e4f4cb2acbb 100644 --- a/net/bluetooth/l2cap_core.c +++ b/net/bluetooth/l2cap_core.c | |||
@@ -300,7 +300,7 @@ void l2cap_chan_destroy(struct l2cap_chan *chan) | |||
300 | l2cap_chan_put(chan); | 300 | l2cap_chan_put(chan); |
301 | } | 301 | } |
302 | 302 | ||
303 | static void l2cap_chan_add(struct l2cap_conn *conn, struct l2cap_chan *chan) | 303 | void __l2cap_chan_add(struct l2cap_conn *conn, struct l2cap_chan *chan) |
304 | { | 304 | { |
305 | BT_DBG("conn %p, psm 0x%2.2x, dcid 0x%4.4x", conn, | 305 | BT_DBG("conn %p, psm 0x%2.2x, dcid 0x%4.4x", conn, |
306 | chan->psm, chan->dcid); | 306 | chan->psm, chan->dcid); |
@@ -346,8 +346,13 @@ static void l2cap_chan_add(struct l2cap_conn *conn, struct l2cap_chan *chan) | |||
346 | 346 | ||
347 | l2cap_chan_hold(chan); | 347 | l2cap_chan_hold(chan); |
348 | 348 | ||
349 | mutex_lock(&conn->chan_lock); | ||
350 | list_add(&chan->list, &conn->chan_l); | 349 | list_add(&chan->list, &conn->chan_l); |
350 | } | ||
351 | |||
352 | void l2cap_chan_add(struct l2cap_conn *conn, struct l2cap_chan *chan) | ||
353 | { | ||
354 | mutex_lock(&conn->chan_lock); | ||
355 | __l2cap_chan_add(conn, chan); | ||
351 | mutex_unlock(&conn->chan_lock); | 356 | mutex_unlock(&conn->chan_lock); |
352 | } | 357 | } |
353 | 358 | ||