Commit 31502104 authored by Kirill Tkhai's avatar Kirill Tkhai Committed by David S. Miller
Browse files

net: Convert ipgre_net_ops, ipgre_tap_net_ops, erspan_net_ops, vti_net_ops and ipip_net_ops



These pernet_operations are similar to bond_net_ops. Exit methods
unregisters all net ipgre/ipgre_tap/erspan/vti/ipip devices, and it
looks like another pernet_operations are not interested in foreign
net ipgre/ipgre_tap/erspan/vti/ipip list. Init method also does not
intersect with something pernet-specific. So, it's possible
to mark them async.

Signed-off-by: default avatarKirill Tkhai <ktkhai@virtuozzo.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 3cec5fb3
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -1044,6 +1044,7 @@ static struct pernet_operations ipgre_net_ops = {
	.exit_batch = ipgre_exit_batch_net,
	.id   = &ipgre_net_id,
	.size = sizeof(struct ip_tunnel_net),
	.async = true,
};

static int ipgre_tunnel_validate(struct nlattr *tb[], struct nlattr *data[],
@@ -1623,6 +1624,7 @@ static struct pernet_operations ipgre_tap_net_ops = {
	.exit_batch = ipgre_tap_exit_batch_net,
	.id   = &gre_tap_net_id,
	.size = sizeof(struct ip_tunnel_net),
	.async = true,
};

static int __net_init erspan_init_net(struct net *net)
@@ -1641,6 +1643,7 @@ static struct pernet_operations erspan_net_ops = {
	.exit_batch = erspan_exit_batch_net,
	.id   = &erspan_net_id,
	.size = sizeof(struct ip_tunnel_net),
	.async = true,
};

static int __init ipgre_init(void)
+1 −0
Original line number Diff line number Diff line
@@ -454,6 +454,7 @@ static struct pernet_operations vti_net_ops = {
	.exit_batch = vti_exit_batch_net,
	.id   = &vti_net_id,
	.size = sizeof(struct ip_tunnel_net),
	.async = true,
};

static int vti_tunnel_validate(struct nlattr *tb[], struct nlattr *data[],
+1 −0
Original line number Diff line number Diff line
@@ -669,6 +669,7 @@ static struct pernet_operations ipip_net_ops = {
	.exit_batch = ipip_exit_batch_net,
	.id   = &ipip_net_id,
	.size = sizeof(struct ip_tunnel_net),
	.async = true,
};

static int __init ipip_init(void)