diff options
author | Eric Dumazet <dada1@cosmosbay.com> | 2008-11-19 14:25:35 -0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-11-19 14:25:35 -0800 |
commit | 3680453c8be54fff0d23fdf33e8961a48e1f2cd6 (patch) | |
tree | a51fe155df61483cb64255ed3cf58bb52b1daaff /net/packet | |
parent | 198d6ba4d7f48c94f990f4604f0b3d73925e0ded (diff) | |
download | op-kernel-dev-3680453c8be54fff0d23fdf33e8961a48e1f2cd6.zip op-kernel-dev-3680453c8be54fff0d23fdf33e8961a48e1f2cd6.tar.gz |
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: Eric Dumazet <dada1@cosmosbay.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/packet')
-rw-r--r-- | net/packet/af_packet.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/net/packet/af_packet.c b/net/packet/af_packet.c index c718e7e..b4870a3 100644 --- a/net/packet/af_packet.c +++ b/net/packet/af_packet.c @@ -910,6 +910,7 @@ static int packet_release(struct socket *sock) skb_queue_purge(&sk->sk_receive_queue); sk_refcnt_debug_release(sk); + sock_prot_inuse_add(net, sk->sk_prot, -1); sock_put(sk); return 0; } @@ -1085,6 +1086,7 @@ static int packet_create(struct net *net, struct socket *sock, int protocol) write_lock_bh(&net->packet.sklist_lock); sk_add_node(sk, &net->packet.sklist); write_unlock_bh(&net->packet.sklist_lock); + sock_prot_inuse_add(net, &packet_proto, 1); return(0); out: return err; |