summary refs log tree commit diff
path: root/net/core/net_namespace.c
diff options
context:
space:
mode:
authorKirill Tkhai <ktkhai@virtuozzo.com>2018-02-13 12:27:03 +0300
committerDavid S. Miller <davem@davemloft.net>2018-02-13 10:36:05 -0500
commit3fc3b827f0c4397c74d4b8a8a06d71b903a4982f (patch)
tree6d88cc90ff2eb628dfc21ac64597818a43c030ce /net/core/net_namespace.c
parentf039e184bc45227553e645fb1c7021d69a5262b4 (diff)
downloadlinux-3fc3b827f0c4397c74d4b8a8a06d71b903a4982f.tar.gz
net: Convert net_ns_ops methods
This patch starts to convert pernet_subsys, registered
from pure initcalls.

net_ns_ops::net_ns_net_init/net_ns_net_init, methods use only
ida_simple_* functions, which are not need a synchronization.
They are synchronized by idr subsystem.

So, net_ns_ops methods are able to be executed
in parallel with methods of 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>
Diffstat (limited to 'net/core/net_namespace.c')
-rw-r--r--net/core/net_namespace.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/core/net_namespace.c b/net/core/net_namespace.c
index 2a01ff32d9c7..e21c564c8c00 100644
--- a/net/core/net_namespace.c
+++ b/net/core/net_namespace.c
@@ -649,6 +649,7 @@ static __net_exit void net_ns_net_exit(struct net *net)
 static struct pernet_operations __net_initdata net_ns_ops = {
 	.init = net_ns_net_init,
 	.exit = net_ns_net_exit,
+	.async = true,
 };
 
 static const struct nla_policy rtnl_net_policy[NETNSA_MAX + 1] = {