summaryrefslogtreecommitdiffstats
path: root/net/unix/af_unix.c
diff options
context:
space:
mode:
authorEric Dumazet <dada1@cosmosbay.com>2008-11-24 09:09:29 +0100
committerDavid S. Miller <davem@davemloft.net>2008-11-24 09:09:29 +0100
commit920de804bca61f88643bc9171bcd06f1a56c6258 (patch)
treefb4c90b4b167a4b7518ea888e99bfd18a7d301fb /net/unix/af_unix.c
parenteth: Declare an optimized compare_ether_addr_64bits() function (diff)
downloadlinux-920de804bca61f88643bc9171bcd06f1a56c6258.tar.xz
linux-920de804bca61f88643bc9171bcd06f1a56c6258.zip
net: Make sure BHs are disabled in sock_prot_inuse_add()
The rule of calling sock_prot_inuse_add() is that BHs must be disabled. Some new calls were added where this was not true and this tiggers warnings as reported by Ilpo. Fix this by adding explicit BH disabling around those call sites, or moving sock_prot_inuse_add() call inside an existing BH disabled section. Signed-off-by: Eric Dumazet <dada1@cosmosbay.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/unix/af_unix.c')
-rw-r--r--net/unix/af_unix.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/net/unix/af_unix.c b/net/unix/af_unix.c
index a45a9f7369ed..3a35a6e8bf91 100644
--- a/net/unix/af_unix.c
+++ b/net/unix/af_unix.c
@@ -615,9 +615,11 @@ static struct sock *unix_create1(struct net *net, struct socket *sock)
out:
if (sk == NULL)
atomic_dec(&unix_nr_socks);
- else
+ else {
+ local_bh_disable();
sock_prot_inuse_add(sock_net(sk), sk->sk_prot, 1);
-
+ local_bh_enable();
+ }
return sk;
}