summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKirill Tkhai <ktkhai@virtuozzo.com>2018-02-13 12:27:13 +0300
committerDavid S. Miller <davem@davemloft.net>2018-02-13 10:36:05 -0500
commit93d230fe0762bf129fb4debc944af3e1c1e8f40e (patch)
tree75f29e285bd1479f6a4341184173f1bb5821fae3
parent3fc3b827f0c4397c74d4b8a8a06d71b903a4982f (diff)
downloadlinux-93d230fe0762bf129fb4debc944af3e1c1e8f40e.tar.bz2
net: Convert sysctl_pernet_ops
This patch starts to convert pernet_subsys, registered from core initcalls. Methods sysctl_net_init() and sysctl_net_exit() initialize net::sysctls table of a namespace. pernet_operations::init()/exit() methods from the rest of the list do not touch net::sysctls of strangers, so it's safe to execute sysctl_pernet_ops's methods in parallel with any other pernet_operations. Signed-off-by: Kirill Tkhai <ktkhai@virtuozzo.com> Acked-by: Andrei Vagin <avagin@virtuozzo.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--net/sysctl_net.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/sysctl_net.c b/net/sysctl_net.c
index 9aed6fe1bf1a..f424539829b7 100644
--- a/net/sysctl_net.c
+++ b/net/sysctl_net.c
@@ -89,6 +89,7 @@ static void __net_exit sysctl_net_exit(struct net *net)
static struct pernet_operations sysctl_pernet_ops = {
.init = sysctl_net_init,
.exit = sysctl_net_exit,
+ .async = true,
};
static struct ctl_table_header *net_header;