diff options
author | Kirill Tkhai <ktkhai@virtuozzo.com> | 2018-02-26 16:01:52 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2018-02-27 11:01:37 -0500 |
commit | 31502104b301c0dcacd5df8e92fba9dcf20dfccb (patch) | |
tree | b31d92a8d6089829c67a48d74a8a0f018dc85799 /net/ipv4/ip_gre.c | |
parent | 3cec5fb3476e07833fea9a1e2d5f6c629078b4ae (diff) | |
download | linux-stable-31502104b301c0dcacd5df8e92fba9dcf20dfccb.tar.gz linux-stable-31502104b301c0dcacd5df8e92fba9dcf20dfccb.tar.bz2 linux-stable-31502104b301c0dcacd5df8e92fba9dcf20dfccb.zip |
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: Kirill Tkhai <ktkhai@virtuozzo.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/ip_gre.c')
-rw-r--r-- | net/ipv4/ip_gre.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/net/ipv4/ip_gre.c b/net/ipv4/ip_gre.c index 45d97e9b2759..e496afa47709 100644 --- a/net/ipv4/ip_gre.c +++ b/net/ipv4/ip_gre.c @@ -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) |