diff options
author | Eric W. Biederman <ebiederm@xmission.com> | 2012-04-19 09:20:32 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-04-20 21:21:16 -0400 |
commit | 2ca794e5e86c800d7f98c4ebb8bd325099c0afe8 (patch) | |
tree | f0ae38f58dec5a07ae57e31aca4943c85ffe9d65 /net/socket.c | |
parent | bc8a36942a5c05896d373a8e98d5e6b14514b4bc (diff) |
net sysctl: Initialize the network sysctls sooner to avoid problems.
If the netfilter code is modified to use register_net_sysctl_table the
kernel fails to boot because the per net sysctl infrasturce is not setup
soon enough. So to avoid races call net_sysctl_init from sock_init().
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/socket.c')
-rw-r--r-- | net/socket.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/net/socket.c b/net/socket.c index d6c1af9ae7b2..e34510928dcc 100644 --- a/net/socket.c +++ b/net/socket.c | |||
@@ -2524,6 +2524,12 @@ EXPORT_SYMBOL(sock_unregister); | |||
2524 | static int __init sock_init(void) | 2524 | static int __init sock_init(void) |
2525 | { | 2525 | { |
2526 | int err; | 2526 | int err; |
2527 | /* | ||
2528 | * Initialize the network sysctl infrastructure. | ||
2529 | */ | ||
2530 | err = net_sysctl_init(); | ||
2531 | if (err) | ||
2532 | goto out; | ||
2527 | 2533 | ||
2528 | /* | 2534 | /* |
2529 | * Initialize sock SLAB cache. | 2535 | * Initialize sock SLAB cache. |