Commit 3680453c authored by Eric Dumazet's avatar Eric Dumazet Committed by David S. Miller

net: af_packet should update its inuse counter

This patch is a preparation to namespace conversion of /proc/net/protocols

In order to have relevant information for PACKET protocols, we should use
sock_prot_inuse_add() to update a (percpu and pernamespace) counter of
inuse sockets.
Signed-off-by: default avatarEric Dumazet <dada1@cosmosbay.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 198d6ba4
...@@ -910,6 +910,7 @@ static int packet_release(struct socket *sock) ...@@ -910,6 +910,7 @@ static int packet_release(struct socket *sock)
skb_queue_purge(&sk->sk_receive_queue); skb_queue_purge(&sk->sk_receive_queue);
sk_refcnt_debug_release(sk); sk_refcnt_debug_release(sk);
sock_prot_inuse_add(net, sk->sk_prot, -1);
sock_put(sk); sock_put(sk);
return 0; return 0;
} }
...@@ -1085,6 +1086,7 @@ static int packet_create(struct net *net, struct socket *sock, int protocol) ...@@ -1085,6 +1086,7 @@ static int packet_create(struct net *net, struct socket *sock, int protocol)
write_lock_bh(&net->packet.sklist_lock); write_lock_bh(&net->packet.sklist_lock);
sk_add_node(sk, &net->packet.sklist); sk_add_node(sk, &net->packet.sklist);
write_unlock_bh(&net->packet.sklist_lock); write_unlock_bh(&net->packet.sklist_lock);
sock_prot_inuse_add(net, &packet_proto, 1);
return(0); return(0);
out: out:
return err; return err;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment