Bluetooth: Remove *_bh locks from SCO
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>
This commit is contained in:
parent
393432cd8d
commit
ee65d19e25
|
@ -482,7 +482,7 @@ static int sco_sock_bind(struct socket *sock, struct sockaddr *addr, int addr_le
|
||||||
goto done;
|
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)) {
|
if (bacmp(src, BDADDR_ANY) && __sco_get_sock_by_addr(src)) {
|
||||||
err = -EADDRINUSE;
|
err = -EADDRINUSE;
|
||||||
|
@ -492,7 +492,7 @@ static int sco_sock_bind(struct socket *sock, struct sockaddr *addr, int addr_le
|
||||||
sk->sk_state = BT_BOUND;
|
sk->sk_state = BT_BOUND;
|
||||||
}
|
}
|
||||||
|
|
||||||
write_unlock_bh(&sco_sk_list.lock);
|
write_unlock(&sco_sk_list.lock);
|
||||||
|
|
||||||
done:
|
done:
|
||||||
release_sock(sk);
|
release_sock(sk);
|
||||||
|
@ -965,14 +965,14 @@ static int sco_debugfs_show(struct seq_file *f, void *p)
|
||||||
struct sock *sk;
|
struct sock *sk;
|
||||||
struct hlist_node *node;
|
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) {
|
sk_for_each(sk, node, &sco_sk_list.head) {
|
||||||
seq_printf(f, "%s %s %d\n", batostr(&bt_sk(sk)->src),
|
seq_printf(f, "%s %s %d\n", batostr(&bt_sk(sk)->src),
|
||||||
batostr(&bt_sk(sk)->dst), sk->sk_state);
|
batostr(&bt_sk(sk)->dst), sk->sk_state);
|
||||||
}
|
}
|
||||||
|
|
||||||
read_unlock_bh(&sco_sk_list.lock);
|
read_unlock(&sco_sk_list.lock);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue