diff options
author | Eric W. Biederman <ebiederm@xmission.com> | 2012-04-19 13:24:33 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-04-20 21:21:17 -0400 |
commit | 5dd3df105b9f6cb7dd2472b59e028d0d1c878ecb (patch) | |
tree | b12606e6e74ee6d07823eb268e09d899946279fd /net/core | |
parent | 4344475797a16ef948385780943f7a5cf09f0675 (diff) | |
download | linux-3.10-5dd3df105b9f6cb7dd2472b59e028d0d1c878ecb.tar.gz linux-3.10-5dd3df105b9f6cb7dd2472b59e028d0d1c878ecb.tar.bz2 linux-3.10-5dd3df105b9f6cb7dd2472b59e028d0d1c878ecb.zip |
net: Move all of the network sysctls without a namespace into init_net.
This makes it clearer which sysctls are relative to your current network
namespace.
This makes it a little less error prone by not exposing sysctls for the
initial network namespace in other namespaces.
This is the same way we handle all of our other network interfaces to
userspace and I can't honestly remember why we didn't do this for
sysctls right from the start.
Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Acked-by: Pavel Emelyanov <xemul@parallels.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/core')
-rw-r--r-- | net/core/neighbour.c | 2 | ||||
-rw-r--r-- | net/core/sysctl_net_core.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/net/core/neighbour.c b/net/core/neighbour.c index 434eed8c618..0c2df3d3cfb 100644 --- a/net/core/neighbour.c +++ b/net/core/neighbour.c @@ -3017,7 +3017,7 @@ void neigh_sysctl_unregister(struct neigh_parms *p) if (p->sysctl_table) { struct neigh_sysctl_table *t = p->sysctl_table; p->sysctl_table = NULL; - unregister_sysctl_table(t->sysctl_header); + unregister_net_sysctl_table(t->sysctl_header); kfree(t->dev_name); kfree(t); } diff --git a/net/core/sysctl_net_core.c b/net/core/sysctl_net_core.c index 8f67633b484..7d3772e0d15 100644 --- a/net/core/sysctl_net_core.c +++ b/net/core/sysctl_net_core.c @@ -257,7 +257,7 @@ static __init int sysctl_core_init(void) { static struct ctl_table empty[1]; - kmemleak_not_leak(register_sysctl_paths(net_core_path, empty)); + kmemleak_not_leak(register_net_sysctl_table(&init_net, net_core_path, empty)); register_net_sysctl(&init_net, "net/core", net_core_table); return register_pernet_subsys(&sysctl_core_ops); } |