mirror of https://gitee.com/openkylin/linux.git
net: af_unix should update its inuse counter
This patch is a preparation to namespace conversion of /proc/net/protocols In order to have relevant information for UNIX protocol, we should use sock_prot_inuse_add() to update a (percpu and pernamespace) counter of inuse sockets. Signed-off-by: Eric Dumazet <dada1@cosmosbay.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
248969ae31
commit
a8076d8db9
|
@ -361,6 +361,7 @@ static void unix_sock_destructor(struct sock *sk)
|
|||
unix_release_addr(u->addr);
|
||||
|
||||
atomic_dec(&unix_nr_socks);
|
||||
sock_prot_inuse_add(sock_net(sk), sk->sk_prot, -1);
|
||||
#ifdef UNIX_REFCNT_DEBUG
|
||||
printk(KERN_DEBUG "UNIX %p is destroyed, %d are still alive.\n", sk,
|
||||
atomic_read(&unix_nr_socks));
|
||||
|
@ -612,6 +613,9 @@ static struct sock *unix_create1(struct net *net, struct socket *sock)
|
|||
out:
|
||||
if (sk == NULL)
|
||||
atomic_dec(&unix_nr_socks);
|
||||
else
|
||||
sock_prot_inuse_add(sock_net(sk), sk->sk_prot, 1);
|
||||
|
||||
return sk;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue