summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKirill Tkhai <ktkhai@virtuozzo.com>2018-03-15 12:11:16 +0300
committerDavid S. Miller <davem@davemloft.net>2018-03-17 17:07:39 -0400
commitec716650a750334cd763024597159eea3569e207 (patch)
tree30ab55658fb54ad3ad3f606836edf90bdb673cbf
parent8cec2f49dc413d6328067d22862b0bdd0f4305ec (diff)
downloadlinux-stable-ec716650a750334cd763024597159eea3569e207.tar.gz
linux-stable-ec716650a750334cd763024597159eea3569e207.tar.bz2
linux-stable-ec716650a750334cd763024597159eea3569e207.zip
net: Convert ovs_net_ops
These pernet_operations initialize and destroy net_generic() data pointed by ovs_net_id. Exit method destroys vports from alive net to exiting net. Since they are only pernet_operations interested in this data, and exit method is executed under exclusive global lock (ovs_mutex), they are safe to be executed in parallel. Signed-off-by: Kirill Tkhai <ktkhai@virtuozzo.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--net/openvswitch/datapath.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/openvswitch/datapath.c b/net/openvswitch/datapath.c
index ef38e5aecd28..100191df0371 100644
--- a/net/openvswitch/datapath.c
+++ b/net/openvswitch/datapath.c
@@ -2384,6 +2384,7 @@ static struct pernet_operations ovs_net_ops = {
.exit = ovs_exit_net,
.id = &ovs_net_id,
.size = sizeof(struct ovs_net),
+ .async = true,
};
static int __init dp_init(void)