Skip to content

Commit

Permalink
Bluetooth: Don't use *_bh locks anymore
Browse files Browse the repository at this point in the history
Those locks are not shared between interrupt and process context anymore,
so remove the part that disable interrupts.  We are still safe because
preemption is disabled.

Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
  • Loading branch information
Gustavo F. Padovan committed Jan 3, 2012
1 parent e75a8b0 commit 333055f
Showing 1 changed file with 12 additions and 12 deletions.
24 changes: 12 additions & 12 deletions net/bluetooth/l2cap_core.c
Original file line number Diff line number Diff line change
Expand Up @@ -165,7 +165,7 @@ int l2cap_add_psm(struct l2cap_chan *chan, bdaddr_t *src, __le16 psm)
{
int err;

write_lock_bh(&chan_list_lock);
write_lock(&chan_list_lock);

if (psm && __l2cap_global_chan_by_addr(psm, src)) {
err = -EADDRINUSE;
Expand All @@ -190,17 +190,17 @@ int l2cap_add_psm(struct l2cap_chan *chan, bdaddr_t *src, __le16 psm)
}

done:
write_unlock_bh(&chan_list_lock);
write_unlock(&chan_list_lock);
return err;
}

int l2cap_add_scid(struct l2cap_chan *chan, __u16 scid)
{
write_lock_bh(&chan_list_lock);
write_lock(&chan_list_lock);

chan->scid = scid;

write_unlock_bh(&chan_list_lock);
write_unlock(&chan_list_lock);

return 0;
}
Expand Down Expand Up @@ -289,9 +289,9 @@ struct l2cap_chan *l2cap_chan_create(struct sock *sk)

chan->sk = sk;

write_lock_bh(&chan_list_lock);
write_lock(&chan_list_lock);
list_add(&chan->global_l, &chan_list);
write_unlock_bh(&chan_list_lock);
write_unlock(&chan_list_lock);

INIT_DELAYED_WORK(&chan->chan_timer, l2cap_chan_timeout);

Expand All @@ -306,9 +306,9 @@ struct l2cap_chan *l2cap_chan_create(struct sock *sk)

void l2cap_chan_destroy(struct l2cap_chan *chan)
{
write_lock_bh(&chan_list_lock);
write_lock(&chan_list_lock);
list_del(&chan->global_l);
write_unlock_bh(&chan_list_lock);
write_unlock(&chan_list_lock);

l2cap_chan_put(chan);
}
Expand Down Expand Up @@ -543,14 +543,14 @@ static u8 l2cap_get_ident(struct l2cap_conn *conn)
* 200 - 254 are used by utilities like l2ping, etc.
*/

spin_lock_bh(&conn->lock);
spin_lock(&conn->lock);

if (++conn->tx_ident > 128)
conn->tx_ident = 1;

id = conn->tx_ident;

spin_unlock_bh(&conn->lock);
spin_unlock(&conn->lock);

return id;
}
Expand Down Expand Up @@ -4702,7 +4702,7 @@ static int l2cap_debugfs_show(struct seq_file *f, void *p)
{
struct l2cap_chan *c;

read_lock_bh(&chan_list_lock);
read_lock(&chan_list_lock);

list_for_each_entry(c, &chan_list, global_l) {
struct sock *sk = c->sk;
Expand All @@ -4715,7 +4715,7 @@ static int l2cap_debugfs_show(struct seq_file *f, void *p)
c->sec_level, c->mode);
}

read_unlock_bh(&chan_list_lock);
read_unlock(&chan_list_lock);

return 0;
}
Expand Down

0 comments on commit 333055f

Please sign in to comment.