diff options
author | Pavel Emelyanov <xemul@openvz.org> | 2008-04-01 04:42:16 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-04-01 04:42:16 +0200 |
commit | 70ee115942be6ce52ff10e5e813fb4da82cdb25a (patch) | |
tree | aa3a22dfece765ead70df8f07974e398766b0104 /include/net/netns | |
parent | [SOCK][NETNS]: Add a struct net argument to sock_prot_inuse_add and _get. (diff) | |
download | linux-70ee115942be6ce52ff10e5e813fb4da82cdb25a.tar.xz linux-70ee115942be6ce52ff10e5e813fb4da82cdb25a.zip |
[SOCK][NETNS]: 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.
Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/netns')
-rw-r--r-- | include/net/netns/core.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/include/net/netns/core.h b/include/net/netns/core.h index 0e8c0f8435d4..24d4be76bbd1 100644 --- a/include/net/netns/core.h +++ b/include/net/netns/core.h @@ -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 |