diff mbox

net: af_packet should update its inuse counter

Message ID 49214C1F.2060000@cosmosbay.com
State Accepted, archived
Delegated to: David Miller
Headers show

Commit Message

Eric Dumazet Nov. 17, 2008, 10:49 a.m. UTC
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>
---

Comments

David Miller Nov. 19, 2008, 10:25 p.m. UTC | #1
From: Eric Dumazet <dada1@cosmosbay.com>
Date: Mon, 17 Nov 2008 11:49:03 +0100

> 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>

Applied to net-next-2.6, thanks.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

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;