Skip to contentSkip to conversation

: Add the percpu prot_inuse counter in the struct net.

PATCH Applied Pavel Emelyanov 2 participants 2 messages Mar 31, 2008 – Apr 1, 2008

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

PATCH 3/6 : Add the percpu prot_inuse counter in the struct net.

Such an accounting would cost us two more dereferences to get the percpu variable from the struct net, so I make sock_prot_inuse_get and _add calls work differently depending on CONFIG_NET_NS - without it old optimized routines are used.

The per-cpu counter for init_net is prepared in core_initcall, so that even af_inet, that starts as fs_initcall, will already have the init_net prepared.

---
 include/net/netns/core.h |    3 ++
 net/core/sock.c          |   48 ++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 51 insertions(+), 0 deletions(-)
include/net/netns/core.h +3 -0
index 0e8c0f8..24d4be7 100644
@@ -2,12 +2,15 @@
 #define __NETNS_CORE_H__
 
 struct ctl_table_header;
+struct prot_inuse;
 
 struct netns_core {
 	/* core sysctls */
 	struct ctl_table_header	*sysctl_hdr;
 
 	int	sysctl_somaxconn;
+
+	struct prot_inuse	*inuse;
 };
 
 #endif
net/core/sock.c +48 -0

60 lines not on this page · raw message

Signature · 1 line
1.5.3.4
maintainer Applied
#1 lore raw

From: Pavel Emelyanov <[email protected]>
Date: Mon, 31 Mar 2008 16:15:47 +0400

Quoted 10 lines

Such an accounting would cost us two more dereferences to get the percpu variable from the struct net, so I make sock_prot_inuse_get and _add calls work differently depending on CONFIG_NET_NS - without it old optimized routines are used.

The per-cpu counter for init_net is prepared in core_initcall, so that even af_inet, that starts as fs_initcall, will already have the init_net prepared.

Applied.