Skip to content

Commit

Permalink
Bluetooth: Remove *_bh locks from SCO
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.

Acked-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
  • Loading branch information
Gustavo F. Padovan committed Jan 3, 2012
1 parent 393432c commit ee65d19
Showing 1 changed file with 4 additions and 4 deletions.
8 changes: 4 additions & 4 deletions net/bluetooth/sco.c
Original file line number Diff line number Diff line change
Expand Up @@ -482,7 +482,7 @@ static int sco_sock_bind(struct socket *sock, struct sockaddr *addr, int addr_le
goto done;
}

write_lock_bh(&sco_sk_list.lock);
write_lock(&sco_sk_list.lock);

if (bacmp(src, BDADDR_ANY) && __sco_get_sock_by_addr(src)) {
err = -EADDRINUSE;
Expand All @@ -492,7 +492,7 @@ static int sco_sock_bind(struct socket *sock, struct sockaddr *addr, int addr_le
sk->sk_state = BT_BOUND;
}

write_unlock_bh(&sco_sk_list.lock);
write_unlock(&sco_sk_list.lock);

done:
release_sock(sk);
Expand Down Expand Up @@ -965,14 +965,14 @@ static int sco_debugfs_show(struct seq_file *f, void *p)
struct sock *sk;
struct hlist_node *node;

read_lock_bh(&sco_sk_list.lock);
read_lock(&sco_sk_list.lock);

sk_for_each(sk, node, &sco_sk_list.head) {
seq_printf(f, "%s %s %d\n", batostr(&bt_sk(sk)->src),
batostr(&bt_sk(sk)->dst), sk->sk_state);
}

read_unlock_bh(&sco_sk_list.lock);
read_unlock(&sco_sk_list.lock);

return 0;
}
Expand Down

0 comments on commit ee65d19

Please sign in to comment.