summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/infiniband/core/cma.c1
-rw-r--r--drivers/net/bonding/bond_main.c1
-rw-r--r--drivers/net/geneve.c1
-rw-r--r--drivers/net/gtp.c1
-rw-r--r--drivers/net/ipvlan/ipvlan_main.c1
-rw-r--r--drivers/net/loopback.c1
-rw-r--r--drivers/net/ppp/ppp_generic.c1
-rw-r--r--drivers/net/ppp/pppoe.c1
-rw-r--r--drivers/net/vrf.c1
-rw-r--r--drivers/net/vxlan.c1
-rw-r--r--drivers/net/wireless/mac80211_hwsim.c1
-rw-r--r--fs/lockd/svc.c1
-rw-r--r--fs/nfs/blocklayout/rpc_pipefs.c1
-rw-r--r--fs/nfs/dns_resolve.c1
-rw-r--r--fs/nfs/inode.c1
-rw-r--r--fs/nfs_common/grace.c1
-rw-r--r--fs/nfsd/nfsctl.c1
-rw-r--r--fs/proc/proc_net.c1
-rw-r--r--include/net/net_namespace.h6
-rw-r--r--kernel/audit.c1
-rw-r--r--lib/kobject_uevent.c1
-rw-r--r--net/8021q/vlan.c1
-rw-r--r--net/bridge/br.c1
-rw-r--r--net/bridge/br_netfilter_hooks.c1
-rw-r--r--net/bridge/netfilter/ebtable_broute.c1
-rw-r--r--net/bridge/netfilter/ebtable_filter.c1
-rw-r--r--net/bridge/netfilter/ebtable_nat.c1
-rw-r--r--net/bridge/netfilter/nf_log_bridge.c1
-rw-r--r--net/caif/caif_dev.c1
-rw-r--r--net/can/af_can.c1
-rw-r--r--net/can/bcm.c1
-rw-r--r--net/can/gw.c1
-rw-r--r--net/core/dev.c2
-rw-r--r--net/core/fib_notifier.c1
-rw-r--r--net/core/fib_rules.c1
-rw-r--r--net/core/net-procfs.c2
-rw-r--r--net/core/net_namespace.c2
-rw-r--r--net/core/pktgen.c1
-rw-r--r--net/core/rtnetlink.c1
-rw-r--r--net/core/sock.c2
-rw-r--r--net/core/sock_diag.c1
-rw-r--r--net/core/sysctl_net_core.c1
-rw-r--r--net/dccp/ipv4.c1
-rw-r--r--net/dccp/ipv6.c1
-rw-r--r--net/ieee802154/6lowpan/reassembly.c1
-rw-r--r--net/ieee802154/core.c1
-rw-r--r--net/ipv4/af_inet.c2
-rw-r--r--net/ipv4/arp.c1
-rw-r--r--net/ipv4/devinet.c1
-rw-r--r--net/ipv4/fib_frontend.c1
-rw-r--r--net/ipv4/fou.c1
-rw-r--r--net/ipv4/icmp.c1
-rw-r--r--net/ipv4/igmp.c1
-rw-r--r--net/ipv4/ip_fragment.c1
-rw-r--r--net/ipv4/ip_gre.c3
-rw-r--r--net/ipv4/ip_vti.c1
-rw-r--r--net/ipv4/ipip.c1
-rw-r--r--net/ipv4/ipmr.c1
-rw-r--r--net/ipv4/netfilter/arp_tables.c1
-rw-r--r--net/ipv4/netfilter/arptable_filter.c1
-rw-r--r--net/ipv4/netfilter/ip_tables.c1
-rw-r--r--net/ipv4/netfilter/ipt_CLUSTERIP.c1
-rw-r--r--net/ipv4/netfilter/iptable_filter.c1
-rw-r--r--net/ipv4/netfilter/iptable_mangle.c1
-rw-r--r--net/ipv4/netfilter/iptable_nat.c1
-rw-r--r--net/ipv4/netfilter/iptable_raw.c1
-rw-r--r--net/ipv4/netfilter/iptable_security.c1
-rw-r--r--net/ipv4/netfilter/nf_conntrack_l3proto_ipv4.c1
-rw-r--r--net/ipv4/netfilter/nf_defrag_ipv4.c1
-rw-r--r--net/ipv4/netfilter/nf_log_arp.c1
-rw-r--r--net/ipv4/netfilter/nf_log_ipv4.c1
-rw-r--r--net/ipv4/ping.c1
-rw-r--r--net/ipv4/proc.c1
-rw-r--r--net/ipv4/raw.c1
-rw-r--r--net/ipv4/route.c4
-rw-r--r--net/ipv4/sysctl_net_ipv4.c1
-rw-r--r--net/ipv4/tcp_ipv4.c2
-rw-r--r--net/ipv4/tcp_metrics.c1
-rw-r--r--net/ipv4/udp.c2
-rw-r--r--net/ipv4/udplite.c1
-rw-r--r--net/ipv4/xfrm4_policy.c1
-rw-r--r--net/ipv6/addrconf.c2
-rw-r--r--net/ipv6/addrlabel.c1
-rw-r--r--net/ipv6/af_inet6.c1
-rw-r--r--net/ipv6/fib6_rules.c1
-rw-r--r--net/ipv6/icmp.c1
-rw-r--r--net/ipv6/ila/ila_xlat.c1
-rw-r--r--net/ipv6/ip6_fib.c1
-rw-r--r--net/ipv6/ip6_flowlabel.c1
-rw-r--r--net/ipv6/ip6_gre.c1
-rw-r--r--net/ipv6/ip6_tunnel.c1
-rw-r--r--net/ipv6/ip6_vti.c1
-rw-r--r--net/ipv6/ip6mr.c1
-rw-r--r--net/ipv6/mcast.c1
-rw-r--r--net/ipv6/ndisc.c1
-rw-r--r--net/ipv6/netfilter/ip6_tables.c1
-rw-r--r--net/ipv6/netfilter/ip6table_filter.c1
-rw-r--r--net/ipv6/netfilter/ip6table_mangle.c1
-rw-r--r--net/ipv6/netfilter/ip6table_nat.c1
-rw-r--r--net/ipv6/netfilter/ip6table_raw.c1
-rw-r--r--net/ipv6/netfilter/ip6table_security.c1
-rw-r--r--net/ipv6/netfilter/nf_conntrack_l3proto_ipv6.c1
-rw-r--r--net/ipv6/netfilter/nf_conntrack_reasm.c1
-rw-r--r--net/ipv6/netfilter/nf_defrag_ipv6_hooks.c1
-rw-r--r--net/ipv6/netfilter/nf_log_ipv6.c1
-rw-r--r--net/ipv6/ping.c1
-rw-r--r--net/ipv6/proc.c1
-rw-r--r--net/ipv6/raw.c1
-rw-r--r--net/ipv6/reassembly.c1
-rw-r--r--net/ipv6/route.c3
-rw-r--r--net/ipv6/seg6.c1
-rw-r--r--net/ipv6/sit.c1
-rw-r--r--net/ipv6/sysctl_net_ipv6.c1
-rw-r--r--net/ipv6/tcp_ipv6.c1
-rw-r--r--net/ipv6/udplite.c1
-rw-r--r--net/ipv6/xfrm6_policy.c1
-rw-r--r--net/ipv6/xfrm6_tunnel.c1
-rw-r--r--net/kcm/kcmproc.c1
-rw-r--r--net/kcm/kcmsock.c1
-rw-r--r--net/key/af_key.c1
-rw-r--r--net/l2tp/l2tp_core.c1
-rw-r--r--net/l2tp/l2tp_ppp.c1
-rw-r--r--net/mpls/af_mpls.c1
-rw-r--r--net/netfilter/core.c1
-rw-r--r--net/netfilter/ipset/ip_set_core.c1
-rw-r--r--net/netfilter/ipvs/ip_vs_core.c2
-rw-r--r--net/netfilter/ipvs/ip_vs_ftp.c1
-rw-r--r--net/netfilter/ipvs/ip_vs_lblc.c1
-rw-r--r--net/netfilter/ipvs/ip_vs_lblcr.c1
-rw-r--r--net/netfilter/nf_conntrack_netlink.c1
-rw-r--r--net/netfilter/nf_conntrack_proto_gre.c1
-rw-r--r--net/netfilter/nf_conntrack_standalone.c1
-rw-r--r--net/netfilter/nf_log.c1
-rw-r--r--net/netfilter/nf_log_netdev.c1
-rw-r--r--net/netfilter/nf_synproxy_core.c1
-rw-r--r--net/netfilter/nf_tables_api.c1
-rw-r--r--net/netfilter/nfnetlink.c1
-rw-r--r--net/netfilter/nfnetlink_acct.c1
-rw-r--r--net/netfilter/nfnetlink_cttimeout.c1
-rw-r--r--net/netfilter/nfnetlink_log.c1
-rw-r--r--net/netfilter/nfnetlink_queue.c1
-rw-r--r--net/netfilter/x_tables.c1
-rw-r--r--net/netfilter/xt_hashlimit.c1
-rw-r--r--net/netfilter/xt_recent.c1
-rw-r--r--net/netlink/af_netlink.c2
-rw-r--r--net/netlink/genetlink.c1
-rw-r--r--net/openvswitch/datapath.c1
-rw-r--r--net/packet/af_packet.c1
-rw-r--r--net/phonet/pn_dev.c1
-rw-r--r--net/rds/tcp.c1
-rw-r--r--net/rxrpc/net_ns.c1
-rw-r--r--net/sched/act_api.c1
-rw-r--r--net/sched/act_bpf.c1
-rw-r--r--net/sched/act_connmark.c1
-rw-r--r--net/sched/act_csum.c1
-rw-r--r--net/sched/act_gact.c1
-rw-r--r--net/sched/act_ife.c1
-rw-r--r--net/sched/act_ipt.c2
-rw-r--r--net/sched/act_mirred.c1
-rw-r--r--net/sched/act_nat.c1
-rw-r--r--net/sched/act_pedit.c1
-rw-r--r--net/sched/act_police.c1
-rw-r--r--net/sched/act_sample.c1
-rw-r--r--net/sched/act_simple.c1
-rw-r--r--net/sched/act_skbedit.c1
-rw-r--r--net/sched/act_skbmod.c1
-rw-r--r--net/sched/act_tunnel_key.c1
-rw-r--r--net/sched/act_vlan.c1
-rw-r--r--net/sched/cls_api.c1
-rw-r--r--net/sched/sch_api.c1
-rw-r--r--net/sctp/protocol.c2
-rw-r--r--net/sunrpc/auth_gss/auth_gss.c1
-rw-r--r--net/sunrpc/sunrpc_syms.c1
-rw-r--r--net/sysctl_net.c1
-rw-r--r--net/tipc/core.c1
-rw-r--r--net/unix/af_unix.c1
-rw-r--r--net/wireless/core.c1
-rw-r--r--net/wireless/wext-core.c1
-rw-r--r--net/xfrm/xfrm_policy.c1
-rw-r--r--net/xfrm/xfrm_user.c1
-rw-r--r--security/selinux/hooks.c1
-rw-r--r--security/smack/smack_netfilter.c1
182 files changed, 0 insertions, 206 deletions
diff --git a/drivers/infiniband/core/cma.c b/drivers/infiniband/core/cma.c
index 66f203730e80..6ab1059fed66 100644
--- a/drivers/infiniband/core/cma.c
+++ b/drivers/infiniband/core/cma.c
@@ -4554,7 +4554,6 @@ static struct pernet_operations cma_pernet_operations = {
4554 .exit = cma_exit_net, 4554 .exit = cma_exit_net,
4555 .id = &cma_pernet_id, 4555 .id = &cma_pernet_id,
4556 .size = sizeof(struct cma_pernet), 4556 .size = sizeof(struct cma_pernet),
4557 .async = true,
4558}; 4557};
4559 4558
4560static int __init cma_init(void) 4559static int __init cma_init(void)
diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c
index 4c19d23dd282..c669554d70bb 100644
--- a/drivers/net/bonding/bond_main.c
+++ b/drivers/net/bonding/bond_main.c
@@ -4791,7 +4791,6 @@ static struct pernet_operations bond_net_ops = {
4791 .exit = bond_net_exit, 4791 .exit = bond_net_exit,
4792 .id = &bond_net_id, 4792 .id = &bond_net_id,
4793 .size = sizeof(struct bond_net), 4793 .size = sizeof(struct bond_net),
4794 .async = true,
4795}; 4794};
4796 4795
4797static int __init bonding_init(void) 4796static int __init bonding_init(void)
diff --git a/drivers/net/geneve.c b/drivers/net/geneve.c
index 516dd59249d7..b919e89a9b93 100644
--- a/drivers/net/geneve.c
+++ b/drivers/net/geneve.c
@@ -1694,7 +1694,6 @@ static struct pernet_operations geneve_net_ops = {
1694 .exit_batch = geneve_exit_batch_net, 1694 .exit_batch = geneve_exit_batch_net,
1695 .id = &geneve_net_id, 1695 .id = &geneve_net_id,
1696 .size = sizeof(struct geneve_net), 1696 .size = sizeof(struct geneve_net),
1697 .async = true,
1698}; 1697};
1699 1698
1700static int __init geneve_init_module(void) 1699static int __init geneve_init_module(void)
diff --git a/drivers/net/gtp.c b/drivers/net/gtp.c
index 127edd23018f..f38e32a7ec9c 100644
--- a/drivers/net/gtp.c
+++ b/drivers/net/gtp.c
@@ -1325,7 +1325,6 @@ static struct pernet_operations gtp_net_ops = {
1325 .exit = gtp_net_exit, 1325 .exit = gtp_net_exit,
1326 .id = &gtp_net_id, 1326 .id = &gtp_net_id,
1327 .size = sizeof(struct gtp_net), 1327 .size = sizeof(struct gtp_net),
1328 .async = true,
1329}; 1328};
1330 1329
1331static int __init gtp_init(void) 1330static int __init gtp_init(void)
diff --git a/drivers/net/ipvlan/ipvlan_main.c b/drivers/net/ipvlan/ipvlan_main.c
index 743d37fb034a..450eec264a5e 100644
--- a/drivers/net/ipvlan/ipvlan_main.c
+++ b/drivers/net/ipvlan/ipvlan_main.c
@@ -1040,7 +1040,6 @@ static struct pernet_operations ipvlan_net_ops = {
1040 .id = &ipvlan_netid, 1040 .id = &ipvlan_netid,
1041 .size = sizeof(struct ipvlan_netns), 1041 .size = sizeof(struct ipvlan_netns),
1042 .exit = ipvlan_ns_exit, 1042 .exit = ipvlan_ns_exit,
1043 .async = true,
1044}; 1043};
1045 1044
1046static int __init ipvlan_init_module(void) 1045static int __init ipvlan_init_module(void)
diff --git a/drivers/net/loopback.c b/drivers/net/loopback.c
index b97a907ea5aa..30612497643c 100644
--- a/drivers/net/loopback.c
+++ b/drivers/net/loopback.c
@@ -230,5 +230,4 @@ out:
230/* Registered in net/core/dev.c */ 230/* Registered in net/core/dev.c */
231struct pernet_operations __net_initdata loopback_net_ops = { 231struct pernet_operations __net_initdata loopback_net_ops = {
232 .init = loopback_net_init, 232 .init = loopback_net_init,
233 .async = true,
234}; 233};
diff --git a/drivers/net/ppp/ppp_generic.c b/drivers/net/ppp/ppp_generic.c
index 22fcff3c7a9a..dc7c7ec43202 100644
--- a/drivers/net/ppp/ppp_generic.c
+++ b/drivers/net/ppp/ppp_generic.c
@@ -970,7 +970,6 @@ static struct pernet_operations ppp_net_ops = {
970 .exit = ppp_exit_net, 970 .exit = ppp_exit_net,
971 .id = &ppp_net_id, 971 .id = &ppp_net_id,
972 .size = sizeof(struct ppp_net), 972 .size = sizeof(struct ppp_net),
973 .async = true,
974}; 973};
975 974
976static int ppp_unit_register(struct ppp *ppp, int unit, bool ifname_is_set) 975static int ppp_unit_register(struct ppp *ppp, int unit, bool ifname_is_set)
diff --git a/drivers/net/ppp/pppoe.c b/drivers/net/ppp/pppoe.c
index f9552a400271..1483bc7b01e1 100644
--- a/drivers/net/ppp/pppoe.c
+++ b/drivers/net/ppp/pppoe.c
@@ -1161,7 +1161,6 @@ static struct pernet_operations pppoe_net_ops = {
1161 .exit = pppoe_exit_net, 1161 .exit = pppoe_exit_net,
1162 .id = &pppoe_net_id, 1162 .id = &pppoe_net_id,
1163 .size = sizeof(struct pppoe_net), 1163 .size = sizeof(struct pppoe_net),
1164 .async = true,
1165}; 1164};
1166 1165
1167static int __init pppoe_init(void) 1166static int __init pppoe_init(void)
diff --git a/drivers/net/vrf.c b/drivers/net/vrf.c
index c6be49d3a9eb..102582459bef 100644
--- a/drivers/net/vrf.c
+++ b/drivers/net/vrf.c
@@ -1435,7 +1435,6 @@ static struct pernet_operations vrf_net_ops __net_initdata = {
1435 .init = vrf_netns_init, 1435 .init = vrf_netns_init,
1436 .id = &vrf_net_id, 1436 .id = &vrf_net_id,
1437 .size = sizeof(bool), 1437 .size = sizeof(bool),
1438 .async = true,
1439}; 1438};
1440 1439
1441static int __init vrf_init_module(void) 1440static int __init vrf_init_module(void)
diff --git a/drivers/net/vxlan.c b/drivers/net/vxlan.c
index aa5f034d6ad1..fab7a4db249e 100644
--- a/drivers/net/vxlan.c
+++ b/drivers/net/vxlan.c
@@ -3752,7 +3752,6 @@ static struct pernet_operations vxlan_net_ops = {
3752 .exit_batch = vxlan_exit_batch_net, 3752 .exit_batch = vxlan_exit_batch_net,
3753 .id = &vxlan_net_id, 3753 .id = &vxlan_net_id,
3754 .size = sizeof(struct vxlan_net), 3754 .size = sizeof(struct vxlan_net),
3755 .async = true,
3756}; 3755};
3757 3756
3758static int __init vxlan_init_module(void) 3757static int __init vxlan_init_module(void)
diff --git a/drivers/net/wireless/mac80211_hwsim.c b/drivers/net/wireless/mac80211_hwsim.c
index 100cf42db65d..a37f4b1d9d30 100644
--- a/drivers/net/wireless/mac80211_hwsim.c
+++ b/drivers/net/wireless/mac80211_hwsim.c
@@ -3542,7 +3542,6 @@ static struct pernet_operations hwsim_net_ops = {
3542 .exit = hwsim_exit_net, 3542 .exit = hwsim_exit_net,
3543 .id = &hwsim_net_id, 3543 .id = &hwsim_net_id,
3544 .size = sizeof(struct hwsim_net), 3544 .size = sizeof(struct hwsim_net),
3545 .async = true,
3546}; 3545};
3547 3546
3548static void hwsim_exit_netlink(void) 3547static void hwsim_exit_netlink(void)
diff --git a/fs/lockd/svc.c b/fs/lockd/svc.c
index 2dee4e03ff1c..9c36d614bf89 100644
--- a/fs/lockd/svc.c
+++ b/fs/lockd/svc.c
@@ -709,7 +709,6 @@ static struct pernet_operations lockd_net_ops = {
709 .exit = lockd_exit_net, 709 .exit = lockd_exit_net,
710 .id = &lockd_net_id, 710 .id = &lockd_net_id,
711 .size = sizeof(struct lockd_net), 711 .size = sizeof(struct lockd_net),
712 .async = true,
713}; 712};
714 713
715 714
diff --git a/fs/nfs/blocklayout/rpc_pipefs.c b/fs/nfs/blocklayout/rpc_pipefs.c
index ef9fa111b009..9fb067a6f7e0 100644
--- a/fs/nfs/blocklayout/rpc_pipefs.c
+++ b/fs/nfs/blocklayout/rpc_pipefs.c
@@ -261,7 +261,6 @@ static void nfs4blocklayout_net_exit(struct net *net)
261static struct pernet_operations nfs4blocklayout_net_ops = { 261static struct pernet_operations nfs4blocklayout_net_ops = {
262 .init = nfs4blocklayout_net_init, 262 .init = nfs4blocklayout_net_init,
263 .exit = nfs4blocklayout_net_exit, 263 .exit = nfs4blocklayout_net_exit,
264 .async = true,
265}; 264};
266 265
267int __init bl_init_pipefs(void) 266int __init bl_init_pipefs(void)
diff --git a/fs/nfs/dns_resolve.c b/fs/nfs/dns_resolve.c
index e90bd69ab653..060c658eab66 100644
--- a/fs/nfs/dns_resolve.c
+++ b/fs/nfs/dns_resolve.c
@@ -410,7 +410,6 @@ static void nfs4_dns_net_exit(struct net *net)
410static struct pernet_operations nfs4_dns_resolver_ops = { 410static struct pernet_operations nfs4_dns_resolver_ops = {
411 .init = nfs4_dns_net_init, 411 .init = nfs4_dns_net_init,
412 .exit = nfs4_dns_net_exit, 412 .exit = nfs4_dns_net_exit,
413 .async = true,
414}; 413};
415 414
416static int rpc_pipefs_event(struct notifier_block *nb, unsigned long event, 415static int rpc_pipefs_event(struct notifier_block *nb, unsigned long event,
diff --git a/fs/nfs/inode.c b/fs/nfs/inode.c
index 6c3083c992e5..7d893543cf3b 100644
--- a/fs/nfs/inode.c
+++ b/fs/nfs/inode.c
@@ -2122,7 +2122,6 @@ static struct pernet_operations nfs_net_ops = {
2122 .exit = nfs_net_exit, 2122 .exit = nfs_net_exit,
2123 .id = &nfs_net_id, 2123 .id = &nfs_net_id,
2124 .size = sizeof(struct nfs_net), 2124 .size = sizeof(struct nfs_net),
2125 .async = true,
2126}; 2125};
2127 2126
2128/* 2127/*
diff --git a/fs/nfs_common/grace.c b/fs/nfs_common/grace.c
index 8c743a405df6..5be08f02a76b 100644
--- a/fs/nfs_common/grace.c
+++ b/fs/nfs_common/grace.c
@@ -118,7 +118,6 @@ static struct pernet_operations grace_net_ops = {
118 .exit = grace_exit_net, 118 .exit = grace_exit_net,
119 .id = &grace_net_id, 119 .id = &grace_net_id,
120 .size = sizeof(struct list_head), 120 .size = sizeof(struct list_head),
121 .async = true,
122}; 121};
123 122
124static int __init 123static int __init
diff --git a/fs/nfsd/nfsctl.c b/fs/nfsd/nfsctl.c
index 1e3824e6cce0..d107b4426f7e 100644
--- a/fs/nfsd/nfsctl.c
+++ b/fs/nfsd/nfsctl.c
@@ -1263,7 +1263,6 @@ static struct pernet_operations nfsd_net_ops = {
1263 .exit = nfsd_exit_net, 1263 .exit = nfsd_exit_net,
1264 .id = &nfsd_net_id, 1264 .id = &nfsd_net_id,
1265 .size = sizeof(struct nfsd_net), 1265 .size = sizeof(struct nfsd_net),
1266 .async = true,
1267}; 1266};
1268 1267
1269static int __init init_nfsd(void) 1268static int __init init_nfsd(void)
diff --git a/fs/proc/proc_net.c b/fs/proc/proc_net.c
index da6f8733c9c5..68c06ae7888c 100644
--- a/fs/proc/proc_net.c
+++ b/fs/proc/proc_net.c
@@ -237,7 +237,6 @@ static __net_exit void proc_net_ns_exit(struct net *net)
237static struct pernet_operations __net_initdata proc_net_ns_ops = { 237static struct pernet_operations __net_initdata proc_net_ns_ops = {
238 .init = proc_net_ns_init, 238 .init = proc_net_ns_init,
239 .exit = proc_net_ns_exit, 239 .exit = proc_net_ns_exit,
240 .async = true,
241}; 240};
242 241
243int __init proc_net_init(void) 242int __init proc_net_init(void)
diff --git a/include/net/net_namespace.h b/include/net/net_namespace.h
index 09e30bdc7876..37bcf8382b61 100644
--- a/include/net/net_namespace.h
+++ b/include/net/net_namespace.h
@@ -333,12 +333,6 @@ struct pernet_operations {
333 void (*exit_batch)(struct list_head *net_exit_list); 333 void (*exit_batch)(struct list_head *net_exit_list);
334 unsigned int *id; 334 unsigned int *id;
335 size_t size; 335 size_t size;
336 /*
337 * Indicates above methods are allowed to be executed in parallel
338 * with methods of any other pernet_operations, i.e. they are not
339 * need write locked net_sem.
340 */
341 bool async;
342}; 336};
343 337
344/* 338/*
diff --git a/kernel/audit.c b/kernel/audit.c
index 5e49b614d0e6..227db99b0f19 100644
--- a/kernel/audit.c
+++ b/kernel/audit.c
@@ -1526,7 +1526,6 @@ static struct pernet_operations audit_net_ops __net_initdata = {
1526 .exit = audit_net_exit, 1526 .exit = audit_net_exit,
1527 .id = &audit_net_id, 1527 .id = &audit_net_id,
1528 .size = sizeof(struct audit_net), 1528 .size = sizeof(struct audit_net),
1529 .async = true,
1530}; 1529};
1531 1530
1532/* Initialize audit support at boot time. */ 1531/* Initialize audit support at boot time. */
diff --git a/lib/kobject_uevent.c b/lib/kobject_uevent.c
index fa10ad8e9b17..15ea216a67ce 100644
--- a/lib/kobject_uevent.c
+++ b/lib/kobject_uevent.c
@@ -724,7 +724,6 @@ static void uevent_net_exit(struct net *net)
724static struct pernet_operations uevent_net_ops = { 724static struct pernet_operations uevent_net_ops = {
725 .init = uevent_net_init, 725 .init = uevent_net_init,
726 .exit = uevent_net_exit, 726 .exit = uevent_net_exit,
727 .async = true,
728}; 727};
729 728
730static int __init kobject_uevent_init(void) 729static int __init kobject_uevent_init(void)
diff --git a/net/8021q/vlan.c b/net/8021q/vlan.c
index bd0ed39f65fb..bad01b14a4ad 100644
--- a/net/8021q/vlan.c
+++ b/net/8021q/vlan.c
@@ -729,7 +729,6 @@ static struct pernet_operations vlan_net_ops = {
729 .exit = vlan_exit_net, 729 .exit = vlan_exit_net,
730 .id = &vlan_net_id, 730 .id = &vlan_net_id,
731 .size = sizeof(struct vlan_net), 731 .size = sizeof(struct vlan_net),
732 .async = true,
733}; 732};
734 733
735static int __init vlan_proto_init(void) 734static int __init vlan_proto_init(void)
diff --git a/net/bridge/br.c b/net/bridge/br.c
index a3f95ab9d6a3..26e1616b2c90 100644
--- a/net/bridge/br.c
+++ b/net/bridge/br.c
@@ -188,7 +188,6 @@ static void __net_exit br_net_exit(struct net *net)
188 188
189static struct pernet_operations br_net_ops = { 189static struct pernet_operations br_net_ops = {
190 .exit = br_net_exit, 190 .exit = br_net_exit,
191 .async = true,
192}; 191};
193 192
194static const struct stp_proto br_stp_proto = { 193static const struct stp_proto br_stp_proto = {
diff --git a/net/bridge/br_netfilter_hooks.c b/net/bridge/br_netfilter_hooks.c
index c2120eb889a9..9b16eaf33819 100644
--- a/net/bridge/br_netfilter_hooks.c
+++ b/net/bridge/br_netfilter_hooks.c
@@ -969,7 +969,6 @@ static struct pernet_operations brnf_net_ops __read_mostly = {
969 .exit = brnf_exit_net, 969 .exit = brnf_exit_net,
970 .id = &brnf_net_id, 970 .id = &brnf_net_id,
971 .size = sizeof(struct brnf_net), 971 .size = sizeof(struct brnf_net),
972 .async = true,
973}; 972};
974 973
975static struct notifier_block brnf_notifier __read_mostly = { 974static struct notifier_block brnf_notifier __read_mostly = {
diff --git a/net/bridge/netfilter/ebtable_broute.c b/net/bridge/netfilter/ebtable_broute.c
index f070b5e5b9dd..276b60262981 100644
--- a/net/bridge/netfilter/ebtable_broute.c
+++ b/net/bridge/netfilter/ebtable_broute.c
@@ -77,7 +77,6 @@ static void __net_exit broute_net_exit(struct net *net)
77static struct pernet_operations broute_net_ops = { 77static struct pernet_operations broute_net_ops = {
78 .init = broute_net_init, 78 .init = broute_net_init,
79 .exit = broute_net_exit, 79 .exit = broute_net_exit,
80 .async = true,
81}; 80};
82 81
83static int __init ebtable_broute_init(void) 82static int __init ebtable_broute_init(void)
diff --git a/net/bridge/netfilter/ebtable_filter.c b/net/bridge/netfilter/ebtable_filter.c
index 4151afc8efcc..c41da5fac84f 100644
--- a/net/bridge/netfilter/ebtable_filter.c
+++ b/net/bridge/netfilter/ebtable_filter.c
@@ -105,7 +105,6 @@ static void __net_exit frame_filter_net_exit(struct net *net)
105static struct pernet_operations frame_filter_net_ops = { 105static struct pernet_operations frame_filter_net_ops = {
106 .init = frame_filter_net_init, 106 .init = frame_filter_net_init,
107 .exit = frame_filter_net_exit, 107 .exit = frame_filter_net_exit,
108 .async = true,
109}; 108};
110 109
111static int __init ebtable_filter_init(void) 110static int __init ebtable_filter_init(void)
diff --git a/net/bridge/netfilter/ebtable_nat.c b/net/bridge/netfilter/ebtable_nat.c
index b8da2dfe2ec5..08df7406ecb3 100644
--- a/net/bridge/netfilter/ebtable_nat.c
+++ b/net/bridge/netfilter/ebtable_nat.c
@@ -105,7 +105,6 @@ static void __net_exit frame_nat_net_exit(struct net *net)
105static struct pernet_operations frame_nat_net_ops = { 105static struct pernet_operations frame_nat_net_ops = {
106 .init = frame_nat_net_init, 106 .init = frame_nat_net_init,
107 .exit = frame_nat_net_exit, 107 .exit = frame_nat_net_exit,
108 .async = true,
109}; 108};
110 109
111static int __init ebtable_nat_init(void) 110static int __init ebtable_nat_init(void)
diff --git a/net/bridge/netfilter/nf_log_bridge.c b/net/bridge/netfilter/nf_log_bridge.c
index 91bfc2ac055a..bd2b3c78f59b 100644
--- a/net/bridge/netfilter/nf_log_bridge.c
+++ b/net/bridge/netfilter/nf_log_bridge.c
@@ -48,7 +48,6 @@ static void __net_exit nf_log_bridge_net_exit(struct net *net)
48static struct pernet_operations nf_log_bridge_net_ops = { 48static struct pernet_operations nf_log_bridge_net_ops = {
49 .init = nf_log_bridge_net_init, 49 .init = nf_log_bridge_net_init,
50 .exit = nf_log_bridge_net_exit, 50 .exit = nf_log_bridge_net_exit,
51 .async = true,
52}; 51};
53 52
54static int __init nf_log_bridge_init(void) 53static int __init nf_log_bridge_init(void)
diff --git a/net/caif/caif_dev.c b/net/caif/caif_dev.c
index 7a78268cc572..e0adcd123f48 100644
--- a/net/caif/caif_dev.c
+++ b/net/caif/caif_dev.c
@@ -544,7 +544,6 @@ static struct pernet_operations caif_net_ops = {
544 .exit = caif_exit_net, 544 .exit = caif_exit_net,
545 .id = &caif_net_id, 545 .id = &caif_net_id,
546 .size = sizeof(struct caif_net), 546 .size = sizeof(struct caif_net),
547 .async = true,
548}; 547};
549 548
550/* Initialize Caif devices list */ 549/* Initialize Caif devices list */
diff --git a/net/can/af_can.c b/net/can/af_can.c
index 2f0d0a72e4b5..1684ba5b51eb 100644
--- a/net/can/af_can.c
+++ b/net/can/af_can.c
@@ -954,7 +954,6 @@ static struct notifier_block can_netdev_notifier __read_mostly = {
954static struct pernet_operations can_pernet_ops __read_mostly = { 954static struct pernet_operations can_pernet_ops __read_mostly = {
955 .init = can_pernet_init, 955 .init = can_pernet_init,
956 .exit = can_pernet_exit, 956 .exit = can_pernet_exit,
957 .async = true,
958}; 957};
959 958
960static __init int can_init(void) 959static __init int can_init(void)
diff --git a/net/can/bcm.c b/net/can/bcm.c
index 26730d39e048..ac5e5e34fee3 100644
--- a/net/can/bcm.c
+++ b/net/can/bcm.c
@@ -1717,7 +1717,6 @@ static void canbcm_pernet_exit(struct net *net)
1717static struct pernet_operations canbcm_pernet_ops __read_mostly = { 1717static struct pernet_operations canbcm_pernet_ops __read_mostly = {
1718 .init = canbcm_pernet_init, 1718 .init = canbcm_pernet_init,
1719 .exit = canbcm_pernet_exit, 1719 .exit = canbcm_pernet_exit,
1720 .async = true,
1721}; 1720};
1722 1721
1723static int __init bcm_module_init(void) 1722static int __init bcm_module_init(void)
diff --git a/net/can/gw.c b/net/can/gw.c
index 8d71e199d5b3..faa3da88a127 100644
--- a/net/can/gw.c
+++ b/net/can/gw.c
@@ -1010,7 +1010,6 @@ static void __net_exit cangw_pernet_exit(struct net *net)
1010static struct pernet_operations cangw_pernet_ops = { 1010static struct pernet_operations cangw_pernet_ops = {
1011 .init = cangw_pernet_init, 1011 .init = cangw_pernet_init,
1012 .exit = cangw_pernet_exit, 1012 .exit = cangw_pernet_exit,
1013 .async = true,
1014}; 1013};
1015 1014
1016static __init int cgw_module_init(void) 1015static __init int cgw_module_init(void)
diff --git a/net/core/dev.c b/net/core/dev.c
index 97a96df4b6da..e13807b5c84d 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -8883,7 +8883,6 @@ static void __net_exit netdev_exit(struct net *net)
8883static struct pernet_operations __net_initdata netdev_net_ops = { 8883static struct pernet_operations __net_initdata netdev_net_ops = {
8884 .init = netdev_init, 8884 .init = netdev_init,
8885 .exit = netdev_exit, 8885 .exit = netdev_exit,
8886 .async = true,
8887}; 8886};
8888 8887
8889static void __net_exit default_device_exit(struct net *net) 8888static void __net_exit default_device_exit(struct net *net)
@@ -8984,7 +8983,6 @@ static void __net_exit default_device_exit_batch(struct list_head *net_list)
8984static struct pernet_operations __net_initdata default_device_ops = { 8983static struct pernet_operations __net_initdata default_device_ops = {
8985 .exit = default_device_exit, 8984 .exit = default_device_exit,
8986 .exit_batch = default_device_exit_batch, 8985 .exit_batch = default_device_exit_batch,
8987 .async = true,
8988}; 8986};
8989 8987
8990/* 8988/*
diff --git a/net/core/fib_notifier.c b/net/core/fib_notifier.c
index 5ace0705a3f9..0c048bdeb016 100644
--- a/net/core/fib_notifier.c
+++ b/net/core/fib_notifier.c
@@ -171,7 +171,6 @@ static void __net_exit fib_notifier_net_exit(struct net *net)
171static struct pernet_operations fib_notifier_net_ops = { 171static struct pernet_operations fib_notifier_net_ops = {
172 .init = fib_notifier_net_init, 172 .init = fib_notifier_net_init,
173 .exit = fib_notifier_net_exit, 173 .exit = fib_notifier_net_exit,
174 .async = true,
175}; 174};
176 175
177static int __init fib_notifier_init(void) 176static int __init fib_notifier_init(void)
diff --git a/net/core/fib_rules.c b/net/core/fib_rules.c
index f6f04fc0f629..9d87ce868402 100644
--- a/net/core/fib_rules.c
+++ b/net/core/fib_rules.c
@@ -1130,7 +1130,6 @@ static void __net_exit fib_rules_net_exit(struct net *net)
1130static struct pernet_operations fib_rules_net_ops = { 1130static struct pernet_operations fib_rules_net_ops = {
1131 .init = fib_rules_net_init, 1131 .init = fib_rules_net_init,
1132 .exit = fib_rules_net_exit, 1132 .exit = fib_rules_net_exit,
1133 .async = true,
1134}; 1133};
1135 1134
1136static int __init fib_rules_init(void) 1135static int __init fib_rules_init(void)
diff --git a/net/core/net-procfs.c b/net/core/net-procfs.c
index dd6ae431d038..9737302907b1 100644
--- a/net/core/net-procfs.c
+++ b/net/core/net-procfs.c
@@ -349,7 +349,6 @@ static void __net_exit dev_proc_net_exit(struct net *net)
349static struct pernet_operations __net_initdata dev_proc_ops = { 349static struct pernet_operations __net_initdata dev_proc_ops = {
350 .init = dev_proc_net_init, 350 .init = dev_proc_net_init,
351 .exit = dev_proc_net_exit, 351 .exit = dev_proc_net_exit,
352 .async = true,
353}; 352};
354 353
355static int dev_mc_seq_show(struct seq_file *seq, void *v) 354static int dev_mc_seq_show(struct seq_file *seq, void *v)
@@ -406,7 +405,6 @@ static void __net_exit dev_mc_net_exit(struct net *net)
406static struct pernet_operations __net_initdata dev_mc_net_ops = { 405static struct pernet_operations __net_initdata dev_mc_net_ops = {
407 .init = dev_mc_net_init, 406 .init = dev_mc_net_init,
408 .exit = dev_mc_net_exit, 407 .exit = dev_mc_net_exit,
409 .async = true,
410}; 408};
411 409
412int __init dev_proc_init(void) 410int __init dev_proc_init(void)
diff --git a/net/core/net_namespace.c b/net/core/net_namespace.c
index 0f614523a13f..eef17ad29dea 100644
--- a/net/core/net_namespace.c
+++ b/net/core/net_namespace.c
@@ -338,7 +338,6 @@ static int __net_init net_defaults_init_net(struct net *net)
338 338
339static struct pernet_operations net_defaults_ops = { 339static struct pernet_operations net_defaults_ops = {
340 .init = net_defaults_init_net, 340 .init = net_defaults_init_net,
341 .async = true,
342}; 341};
343 342
344static __init int net_defaults_init(void) 343static __init int net_defaults_init(void)
@@ -628,7 +627,6 @@ static __net_exit void net_ns_net_exit(struct net *net)
628static struct pernet_operations __net_initdata net_ns_ops = { 627static struct pernet_operations __net_initdata net_ns_ops = {
629 .init = net_ns_net_init, 628 .init = net_ns_net_init,
630 .exit = net_ns_net_exit, 629 .exit = net_ns_net_exit,
631 .async = true,
632}; 630};
633 631
634static const struct nla_policy rtnl_net_policy[NETNSA_MAX + 1] = { 632static const struct nla_policy rtnl_net_policy[NETNSA_MAX + 1] = {
diff --git a/net/core/pktgen.c b/net/core/pktgen.c
index 545cf08cd558..7e4ede34cc52 100644
--- a/net/core/pktgen.c
+++ b/net/core/pktgen.c
@@ -3852,7 +3852,6 @@ static struct pernet_operations pg_net_ops = {
3852 .exit = pg_net_exit, 3852 .exit = pg_net_exit,
3853 .id = &pg_net_id, 3853 .id = &pg_net_id,
3854 .size = sizeof(struct pktgen_net), 3854 .size = sizeof(struct pktgen_net),
3855 .async = true,
3856}; 3855};
3857 3856
3858static int __init pg_init(void) 3857static int __init pg_init(void)
diff --git a/net/core/rtnetlink.c b/net/core/rtnetlink.c
index 87079eaa871b..31438b63d4b4 100644
--- a/net/core/rtnetlink.c
+++ b/net/core/rtnetlink.c
@@ -4730,7 +4730,6 @@ static void __net_exit rtnetlink_net_exit(struct net *net)
4730static struct pernet_operations rtnetlink_net_ops = { 4730static struct pernet_operations rtnetlink_net_ops = {
4731 .init = rtnetlink_net_init, 4731 .init = rtnetlink_net_init,
4732 .exit = rtnetlink_net_exit, 4732 .exit = rtnetlink_net_exit,
4733 .async = true,
4734}; 4733};
4735 4734
4736void __init rtnetlink_init(void) 4735void __init rtnetlink_init(void)
diff --git a/net/core/sock.c b/net/core/sock.c
index 8cee2920a47f..6444525f610c 100644
--- a/net/core/sock.c
+++ b/net/core/sock.c
@@ -3175,7 +3175,6 @@ static void __net_exit sock_inuse_exit_net(struct net *net)
3175static struct pernet_operations net_inuse_ops = { 3175static struct pernet_operations net_inuse_ops = {
3176 .init = sock_inuse_init_net, 3176 .init = sock_inuse_init_net,
3177 .exit = sock_inuse_exit_net, 3177 .exit = sock_inuse_exit_net,
3178 .async = true,
3179}; 3178};
3180 3179
3181static __init int net_inuse_init(void) 3180static __init int net_inuse_init(void)
@@ -3470,7 +3469,6 @@ static __net_exit void proto_exit_net(struct net *net)
3470static __net_initdata struct pernet_operations proto_net_ops = { 3469static __net_initdata struct pernet_operations proto_net_ops = {
3471 .init = proto_init_net, 3470 .init = proto_init_net,
3472 .exit = proto_exit_net, 3471 .exit = proto_exit_net,
3473 .async = true,
3474}; 3472};
3475 3473
3476static int __init proto_init(void) 3474static int __init proto_init(void)
diff --git a/net/core/sock_diag.c b/net/core/sock_diag.c
index a3392a8f9276..c37b5be7c5e4 100644
--- a/net/core/sock_diag.c
+++ b/net/core/sock_diag.c
@@ -324,7 +324,6 @@ static void __net_exit diag_net_exit(struct net *net)
324static struct pernet_operations diag_net_ops = { 324static struct pernet_operations diag_net_ops = {
325 .init = diag_net_init, 325 .init = diag_net_init,
326 .exit = diag_net_exit, 326 .exit = diag_net_exit,
327 .async = true,
328}; 327};
329 328
330static int __init sock_diag_init(void) 329static int __init sock_diag_init(void)
diff --git a/net/core/sysctl_net_core.c b/net/core/sysctl_net_core.c
index 4f47f92459cc..b3b609f0eeb5 100644
--- a/net/core/sysctl_net_core.c
+++ b/net/core/sysctl_net_core.c
@@ -584,7 +584,6 @@ static __net_exit void sysctl_core_net_exit(struct net *net)
584static __net_initdata struct pernet_operations sysctl_core_ops = { 584static __net_initdata struct pernet_operations sysctl_core_ops = {
585 .init = sysctl_core_net_init, 585 .init = sysctl_core_net_init,
586 .exit = sysctl_core_net_exit, 586 .exit = sysctl_core_net_exit,
587 .async = true,
588}; 587};
589 588
590static __init int sysctl_core_init(void) 589static __init int sysctl_core_init(void)
diff --git a/net/dccp/ipv4.c b/net/dccp/ipv4.c
index 13ad28ab1e79..e65fcb45c3f6 100644
--- a/net/dccp/ipv4.c
+++ b/net/dccp/ipv4.c
@@ -1031,7 +1031,6 @@ static struct pernet_operations dccp_v4_ops = {
1031 .init = dccp_v4_init_net, 1031 .init = dccp_v4_init_net,
1032 .exit = dccp_v4_exit_net, 1032 .exit = dccp_v4_exit_net,
1033 .exit_batch = dccp_v4_exit_batch, 1033 .exit_batch = dccp_v4_exit_batch,
1034 .async = true,
1035}; 1034};
1036 1035
1037static int __init dccp_v4_init(void) 1036static int __init dccp_v4_init(void)
diff --git a/net/dccp/ipv6.c b/net/dccp/ipv6.c
index 2f48c020f8c3..5df7857fc0f3 100644
--- a/net/dccp/ipv6.c
+++ b/net/dccp/ipv6.c
@@ -1116,7 +1116,6 @@ static struct pernet_operations dccp_v6_ops = {
1116 .init = dccp_v6_init_net, 1116 .init = dccp_v6_init_net,
1117 .exit = dccp_v6_exit_net, 1117 .exit = dccp_v6_exit_net,
1118 .exit_batch = dccp_v6_exit_batch, 1118 .exit_batch = dccp_v6_exit_batch,
1119 .async = true,
1120}; 1119};
1121 1120
1122static int __init dccp_v6_init(void) 1121static int __init dccp_v6_init(void)
diff --git a/net/ieee802154/6lowpan/reassembly.c b/net/ieee802154/6lowpan/reassembly.c
index a9ccb1322f69..85bf86ad6b18 100644
--- a/net/ieee802154/6lowpan/reassembly.c
+++ b/net/ieee802154/6lowpan/reassembly.c
@@ -603,7 +603,6 @@ static void __net_exit lowpan_frags_exit_net(struct net *net)
603static struct pernet_operations lowpan_frags_ops = { 603static struct pernet_operations lowpan_frags_ops = {
604 .init = lowpan_frags_init_net, 604 .init = lowpan_frags_init_net,
605 .exit = lowpan_frags_exit_net, 605 .exit = lowpan_frags_exit_net,
606 .async = true,
607}; 606};
608 607
609int __init lowpan_net_frag_init(void) 608int __init lowpan_net_frag_init(void)
diff --git a/net/ieee802154/core.c b/net/ieee802154/core.c
index 9104943c15ba..cb7176cd4cd6 100644
--- a/net/ieee802154/core.c
+++ b/net/ieee802154/core.c
@@ -345,7 +345,6 @@ static void __net_exit cfg802154_pernet_exit(struct net *net)
345 345
346static struct pernet_operations cfg802154_pernet_ops = { 346static struct pernet_operations cfg802154_pernet_ops = {
347 .exit = cfg802154_pernet_exit, 347 .exit = cfg802154_pernet_exit,
348 .async = true,
349}; 348};
350 349
351static int __init wpan_phy_class_init(void) 350static int __init wpan_phy_class_init(void)
diff --git a/net/ipv4/af_inet.c b/net/ipv4/af_inet.c
index e8c7fad8c329..f98e2f0db841 100644
--- a/net/ipv4/af_inet.c
+++ b/net/ipv4/af_inet.c
@@ -1735,7 +1735,6 @@ static __net_exit void ipv4_mib_exit_net(struct net *net)
1735static __net_initdata struct pernet_operations ipv4_mib_ops = { 1735static __net_initdata struct pernet_operations ipv4_mib_ops = {
1736 .init = ipv4_mib_init_net, 1736 .init = ipv4_mib_init_net,
1737 .exit = ipv4_mib_exit_net, 1737 .exit = ipv4_mib_exit_net,
1738 .async = true,
1739}; 1738};
1740 1739
1741static int __init init_ipv4_mibs(void) 1740static int __init init_ipv4_mibs(void)
@@ -1789,7 +1788,6 @@ static __net_exit void inet_exit_net(struct net *net)
1789static __net_initdata struct pernet_operations af_inet_ops = { 1788static __net_initdata struct pernet_operations af_inet_ops = {
1790 .init = inet_init_net, 1789 .init = inet_init_net,
1791 .exit = inet_exit_net, 1790 .exit = inet_exit_net,
1792 .async = true,
1793}; 1791};
1794 1792
1795static int __init init_inet_pernet_ops(void) 1793static int __init init_inet_pernet_ops(void)
diff --git a/net/ipv4/arp.c b/net/ipv4/arp.c
index 4c6ba0fb2630..be4c595edccb 100644
--- a/net/ipv4/arp.c
+++ b/net/ipv4/arp.c
@@ -1447,7 +1447,6 @@ static void __net_exit arp_net_exit(struct net *net)
1447static struct pernet_operations arp_net_ops = { 1447static struct pernet_operations arp_net_ops = {
1448 .init = arp_net_init, 1448 .init = arp_net_init,
1449 .exit = arp_net_exit, 1449 .exit = arp_net_exit,
1450 .async = true,
1451}; 1450};
1452 1451
1453static int __init arp_proc_init(void) 1452static int __init arp_proc_init(void)
diff --git a/net/ipv4/devinet.c b/net/ipv4/devinet.c
index 5ae0d1f097ca..40f001782c1b 100644
--- a/net/ipv4/devinet.c
+++ b/net/ipv4/devinet.c
@@ -2469,7 +2469,6 @@ static __net_exit void devinet_exit_net(struct net *net)
2469static __net_initdata struct pernet_operations devinet_ops = { 2469static __net_initdata struct pernet_operations devinet_ops = {
2470 .init = devinet_init_net, 2470 .init = devinet_init_net,
2471 .exit = devinet_exit_net, 2471 .exit = devinet_exit_net,
2472 .async = true,
2473}; 2472};
2474 2473
2475static struct rtnl_af_ops inet_af_ops __read_mostly = { 2474static struct rtnl_af_ops inet_af_ops __read_mostly = {
diff --git a/net/ipv4/fib_frontend.c b/net/ipv4/fib_frontend.c
index ac71c3d496c0..f05afaf3235c 100644
--- a/net/ipv4/fib_frontend.c
+++ b/net/ipv4/fib_frontend.c
@@ -1362,7 +1362,6 @@ static void __net_exit fib_net_exit(struct net *net)
1362static struct pernet_operations fib_net_ops = { 1362static struct pernet_operations fib_net_ops = {
1363 .init = fib_net_init, 1363 .init = fib_net_init,
1364 .exit = fib_net_exit, 1364 .exit = fib_net_exit,
1365 .async = true,
1366}; 1365};
1367 1366
1368void __init ip_fib_init(void) 1367void __init ip_fib_init(void)
diff --git a/net/ipv4/fou.c b/net/ipv4/fou.c
index d3e1a9af478b..1540db65241a 100644
--- a/net/ipv4/fou.c
+++ b/net/ipv4/fou.c
@@ -1081,7 +1081,6 @@ static struct pernet_operations fou_net_ops = {
1081 .exit = fou_exit_net, 1081 .exit = fou_exit_net,
1082 .id = &fou_net_id, 1082 .id = &fou_net_id,
1083 .size = sizeof(struct fou_net), 1083 .size = sizeof(struct fou_net),
1084 .async = true,
1085}; 1084};
1086 1085
1087static int __init fou_init(void) 1086static int __init fou_init(void)
diff --git a/net/ipv4/icmp.c b/net/ipv4/icmp.c
index cc56efa64d5c..1617604c9284 100644
--- a/net/ipv4/icmp.c
+++ b/net/ipv4/icmp.c
@@ -1257,7 +1257,6 @@ fail:
1257static struct pernet_operations __net_initdata icmp_sk_ops = { 1257static struct pernet_operations __net_initdata icmp_sk_ops = {
1258 .init = icmp_sk_init, 1258 .init = icmp_sk_init,
1259 .exit = icmp_sk_exit, 1259 .exit = icmp_sk_exit,
1260 .async = true,
1261}; 1260};
1262 1261
1263int __init icmp_init(void) 1262int __init icmp_init(void)
diff --git a/net/ipv4/igmp.c b/net/ipv4/igmp.c
index f17cd83ba164..b26a81a7de42 100644
--- a/net/ipv4/igmp.c
+++ b/net/ipv4/igmp.c
@@ -3028,7 +3028,6 @@ static void __net_exit igmp_net_exit(struct net *net)
3028static struct pernet_operations igmp_net_ops = { 3028static struct pernet_operations igmp_net_ops = {
3029 .init = igmp_net_init, 3029 .init = igmp_net_init,
3030 .exit = igmp_net_exit, 3030 .exit = igmp_net_exit,
3031 .async = true,
3032}; 3031};
3033#endif 3032#endif
3034 3033
diff --git a/net/ipv4/ip_fragment.c b/net/ipv4/ip_fragment.c
index 5e843ae5e468..bbf1b94942c0 100644
--- a/net/ipv4/ip_fragment.c
+++ b/net/ipv4/ip_fragment.c
@@ -885,7 +885,6 @@ static void __net_exit ipv4_frags_exit_net(struct net *net)
885static struct pernet_operations ip4_frags_ops = { 885static struct pernet_operations ip4_frags_ops = {
886 .init = ipv4_frags_init_net, 886 .init = ipv4_frags_init_net,
887 .exit = ipv4_frags_exit_net, 887 .exit = ipv4_frags_exit_net,
888 .async = true,
889}; 888};
890 889
891void __init ipfrag_init(void) 890void __init ipfrag_init(void)
diff --git a/net/ipv4/ip_gre.c b/net/ipv4/ip_gre.c
index 9ab1aa2f7660..a8772a978224 100644
--- a/net/ipv4/ip_gre.c
+++ b/net/ipv4/ip_gre.c
@@ -1044,7 +1044,6 @@ static struct pernet_operations ipgre_net_ops = {
1044 .exit_batch = ipgre_exit_batch_net, 1044 .exit_batch = ipgre_exit_batch_net,
1045 .id = &ipgre_net_id, 1045 .id = &ipgre_net_id,
1046 .size = sizeof(struct ip_tunnel_net), 1046 .size = sizeof(struct ip_tunnel_net),
1047 .async = true,
1048}; 1047};
1049 1048
1050static int ipgre_tunnel_validate(struct nlattr *tb[], struct nlattr *data[], 1049static int ipgre_tunnel_validate(struct nlattr *tb[], struct nlattr *data[],
@@ -1628,7 +1627,6 @@ static struct pernet_operations ipgre_tap_net_ops = {
1628 .exit_batch = ipgre_tap_exit_batch_net, 1627 .exit_batch = ipgre_tap_exit_batch_net,
1629 .id = &gre_tap_net_id, 1628 .id = &gre_tap_net_id,
1630 .size = sizeof(struct ip_tunnel_net), 1629 .size = sizeof(struct ip_tunnel_net),
1631 .async = true,
1632}; 1630};
1633 1631
1634static int __net_init erspan_init_net(struct net *net) 1632static int __net_init erspan_init_net(struct net *net)
@@ -1647,7 +1645,6 @@ static struct pernet_operations erspan_net_ops = {
1647 .exit_batch = erspan_exit_batch_net, 1645 .exit_batch = erspan_exit_batch_net,
1648 .id = &erspan_net_id, 1646 .id = &erspan_net_id,
1649 .size = sizeof(struct ip_tunnel_net), 1647 .size = sizeof(struct ip_tunnel_net),
1650 .async = true,
1651}; 1648};
1652 1649
1653static int __init ipgre_init(void) 1650static int __init ipgre_init(void)
diff --git a/net/ipv4/ip_vti.c b/net/ipv4/ip_vti.c
index b10bf563afd9..51b1669334fe 100644
--- a/net/ipv4/ip_vti.c
+++ b/net/ipv4/ip_vti.c
@@ -454,7 +454,6 @@ static struct pernet_operations vti_net_ops = {
454 .exit_batch = vti_exit_batch_net, 454 .exit_batch = vti_exit_batch_net,
455 .id = &vti_net_id, 455 .id = &vti_net_id,
456 .size = sizeof(struct ip_tunnel_net), 456 .size = sizeof(struct ip_tunnel_net),
457 .async = true,
458}; 457};
459 458
460static int vti_tunnel_validate(struct nlattr *tb[], struct nlattr *data[], 459static int vti_tunnel_validate(struct nlattr *tb[], struct nlattr *data[],
diff --git a/net/ipv4/ipip.c b/net/ipv4/ipip.c
index 9c5a4d164f09..c891235b4966 100644
--- a/net/ipv4/ipip.c
+++ b/net/ipv4/ipip.c
@@ -669,7 +669,6 @@ static struct pernet_operations ipip_net_ops = {
669 .exit_batch = ipip_exit_batch_net, 669 .exit_batch = ipip_exit_batch_net,
670 .id = &ipip_net_id, 670 .id = &ipip_net_id,
671 .size = sizeof(struct ip_tunnel_net), 671 .size = sizeof(struct ip_tunnel_net),
672 .async = true,
673}; 672};
674 673
675static int __init ipip_init(void) 674static int __init ipip_init(void)
diff --git a/net/ipv4/ipmr.c b/net/ipv4/ipmr.c
index e79211a8537c..2fb4de3f7f66 100644
--- a/net/ipv4/ipmr.c
+++ b/net/ipv4/ipmr.c
@@ -3009,7 +3009,6 @@ static void __net_exit ipmr_net_exit(struct net *net)
3009static struct pernet_operations ipmr_net_ops = { 3009static struct pernet_operations ipmr_net_ops = {
3010 .init = ipmr_net_init, 3010 .init = ipmr_net_init,
3011 .exit = ipmr_net_exit, 3011 .exit = ipmr_net_exit,
3012 .async = true,
3013}; 3012};
3014 3013
3015int __init ip_mr_init(void) 3014int __init ip_mr_init(void)
diff --git a/net/ipv4/netfilter/arp_tables.c b/net/ipv4/netfilter/arp_tables.c
index c36ffce3c812..e3e420f3ba7b 100644
--- a/net/ipv4/netfilter/arp_tables.c
+++ b/net/ipv4/netfilter/arp_tables.c
@@ -1635,7 +1635,6 @@ static void __net_exit arp_tables_net_exit(struct net *net)
1635static struct pernet_operations arp_tables_net_ops = { 1635static struct pernet_operations arp_tables_net_ops = {
1636 .init = arp_tables_net_init, 1636 .init = arp_tables_net_init,
1637 .exit = arp_tables_net_exit, 1637 .exit = arp_tables_net_exit,
1638 .async = true,
1639}; 1638};
1640 1639
1641static int __init arp_tables_init(void) 1640static int __init arp_tables_init(void)
diff --git a/net/ipv4/netfilter/arptable_filter.c b/net/ipv4/netfilter/arptable_filter.c
index 49c2490193ae..8f8713b4388f 100644
--- a/net/ipv4/netfilter/arptable_filter.c
+++ b/net/ipv4/netfilter/arptable_filter.c
@@ -65,7 +65,6 @@ static void __net_exit arptable_filter_net_exit(struct net *net)
65 65
66static struct pernet_operations arptable_filter_net_ops = { 66static struct pernet_operations arptable_filter_net_ops = {
67 .exit = arptable_filter_net_exit, 67 .exit = arptable_filter_net_exit,
68 .async = true,
69}; 68};
70 69
71static int __init arptable_filter_init(void) 70static int __init arptable_filter_init(void)
diff --git a/net/ipv4/netfilter/ip_tables.c b/net/ipv4/netfilter/ip_tables.c
index d4f7584d2dbe..e38395a8dcf2 100644
--- a/net/ipv4/netfilter/ip_tables.c
+++ b/net/ipv4/netfilter/ip_tables.c
@@ -1916,7 +1916,6 @@ static void __net_exit ip_tables_net_exit(struct net *net)
1916static struct pernet_operations ip_tables_net_ops = { 1916static struct pernet_operations ip_tables_net_ops = {
1917 .init = ip_tables_net_init, 1917 .init = ip_tables_net_init,
1918 .exit = ip_tables_net_exit, 1918 .exit = ip_tables_net_exit,
1919 .async = true,
1920}; 1919};
1921 1920
1922static int __init ip_tables_init(void) 1921static int __init ip_tables_init(void)
diff --git a/net/ipv4/netfilter/ipt_CLUSTERIP.c b/net/ipv4/netfilter/ipt_CLUSTERIP.c
index 31b4cca588d0..2c8d313ae216 100644
--- a/net/ipv4/netfilter/ipt_CLUSTERIP.c
+++ b/net/ipv4/netfilter/ipt_CLUSTERIP.c
@@ -845,7 +845,6 @@ static struct pernet_operations clusterip_net_ops = {
845 .exit = clusterip_net_exit, 845 .exit = clusterip_net_exit,
846 .id = &clusterip_net_id, 846 .id = &clusterip_net_id,
847 .size = sizeof(struct clusterip_net), 847 .size = sizeof(struct clusterip_net),
848 .async = true,
849}; 848};
850 849
851static int __init clusterip_tg_init(void) 850static int __init clusterip_tg_init(void)
diff --git a/net/ipv4/netfilter/iptable_filter.c b/net/ipv4/netfilter/iptable_filter.c
index c1c136a93911..9ac92ea7b93c 100644
--- a/net/ipv4/netfilter/iptable_filter.c
+++ b/net/ipv4/netfilter/iptable_filter.c
@@ -87,7 +87,6 @@ static void __net_exit iptable_filter_net_exit(struct net *net)
87static struct pernet_operations iptable_filter_net_ops = { 87static struct pernet_operations iptable_filter_net_ops = {
88 .init = iptable_filter_net_init, 88 .init = iptable_filter_net_init,
89 .exit = iptable_filter_net_exit, 89 .exit = iptable_filter_net_exit,
90 .async = true,
91}; 90};
92 91
93static int __init iptable_filter_init(void) 92static int __init iptable_filter_init(void)
diff --git a/net/ipv4/netfilter/iptable_mangle.c b/net/ipv4/netfilter/iptable_mangle.c
index f6074059531a..dea138ca8925 100644
--- a/net/ipv4/netfilter/iptable_mangle.c
+++ b/net/ipv4/netfilter/iptable_mangle.c
@@ -113,7 +113,6 @@ static void __net_exit iptable_mangle_net_exit(struct net *net)
113 113
114static struct pernet_operations iptable_mangle_net_ops = { 114static struct pernet_operations iptable_mangle_net_ops = {
115 .exit = iptable_mangle_net_exit, 115 .exit = iptable_mangle_net_exit,
116 .async = true,
117}; 116};
118 117
119static int __init iptable_mangle_init(void) 118static int __init iptable_mangle_init(void)
diff --git a/net/ipv4/netfilter/iptable_nat.c b/net/ipv4/netfilter/iptable_nat.c
index b771af74be79..0f7255cc65ee 100644
--- a/net/ipv4/netfilter/iptable_nat.c
+++ b/net/ipv4/netfilter/iptable_nat.c
@@ -129,7 +129,6 @@ static void __net_exit iptable_nat_net_exit(struct net *net)
129 129
130static struct pernet_operations iptable_nat_net_ops = { 130static struct pernet_operations iptable_nat_net_ops = {
131 .exit = iptable_nat_net_exit, 131 .exit = iptable_nat_net_exit,
132 .async = true,
133}; 132};
134 133
135static int __init iptable_nat_init(void) 134static int __init iptable_nat_init(void)
diff --git a/net/ipv4/netfilter/iptable_raw.c b/net/ipv4/netfilter/iptable_raw.c
index 963753e50842..960625aabf04 100644
--- a/net/ipv4/netfilter/iptable_raw.c
+++ b/net/ipv4/netfilter/iptable_raw.c
@@ -76,7 +76,6 @@ static void __net_exit iptable_raw_net_exit(struct net *net)
76 76
77static struct pernet_operations iptable_raw_net_ops = { 77static struct pernet_operations iptable_raw_net_ops = {
78 .exit = iptable_raw_net_exit, 78 .exit = iptable_raw_net_exit,
79 .async = true,
80}; 79};
81 80
82static int __init iptable_raw_init(void) 81static int __init iptable_raw_init(void)
diff --git a/net/ipv4/netfilter/iptable_security.c b/net/ipv4/netfilter/iptable_security.c
index c40d6b3d8b6a..e5379fe57b64 100644
--- a/net/ipv4/netfilter/iptable_security.c
+++ b/net/ipv4/netfilter/iptable_security.c
@@ -76,7 +76,6 @@ static void __net_exit iptable_security_net_exit(struct net *net)
76 76
77static struct pernet_operations iptable_security_net_ops = { 77static struct pernet_operations iptable_security_net_ops = {
78 .exit = iptable_security_net_exit, 78 .exit = iptable_security_net_exit,
79 .async = true,
80}; 79};
81 80
82static int __init iptable_security_init(void) 81static int __init iptable_security_init(void)
diff --git a/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4.c b/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4.c
index 6531f69db010..b50721d9d30e 100644
--- a/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4.c
+++ b/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4.c
@@ -399,7 +399,6 @@ static struct pernet_operations ipv4_net_ops = {
399 .exit = ipv4_net_exit, 399 .exit = ipv4_net_exit,
400 .id = &conntrack4_net_id, 400 .id = &conntrack4_net_id,
401 .size = sizeof(struct conntrack4_net), 401 .size = sizeof(struct conntrack4_net),
402 .async = true,
403}; 402};
404 403
405static int __init nf_conntrack_l3proto_ipv4_init(void) 404static int __init nf_conntrack_l3proto_ipv4_init(void)
diff --git a/net/ipv4/netfilter/nf_defrag_ipv4.c b/net/ipv4/netfilter/nf_defrag_ipv4.c
index 57244b62a4fc..a0d3ad60a411 100644
--- a/net/ipv4/netfilter/nf_defrag_ipv4.c
+++ b/net/ipv4/netfilter/nf_defrag_ipv4.c
@@ -118,7 +118,6 @@ static void __net_exit defrag4_net_exit(struct net *net)
118 118
119static struct pernet_operations defrag4_net_ops = { 119static struct pernet_operations defrag4_net_ops = {
120 .exit = defrag4_net_exit, 120 .exit = defrag4_net_exit,
121 .async = true,
122}; 121};
123 122
124static int __init nf_defrag_init(void) 123static int __init nf_defrag_init(void)
diff --git a/net/ipv4/netfilter/nf_log_arp.c b/net/ipv4/netfilter/nf_log_arp.c
index 162293469ac2..df5c2a2061a4 100644
--- a/net/ipv4/netfilter/nf_log_arp.c
+++ b/net/ipv4/netfilter/nf_log_arp.c
@@ -122,7 +122,6 @@ static void __net_exit nf_log_arp_net_exit(struct net *net)
122static struct pernet_operations nf_log_arp_net_ops = { 122static struct pernet_operations nf_log_arp_net_ops = {
123 .init = nf_log_arp_net_init, 123 .init = nf_log_arp_net_init,
124 .exit = nf_log_arp_net_exit, 124 .exit = nf_log_arp_net_exit,
125 .async = true,
126}; 125};
127 126
128static int __init nf_log_arp_init(void) 127static int __init nf_log_arp_init(void)
diff --git a/net/ipv4/netfilter/nf_log_ipv4.c b/net/ipv4/netfilter/nf_log_ipv4.c
index 7a06de140f3c..4388de0e5380 100644
--- a/net/ipv4/netfilter/nf_log_ipv4.c
+++ b/net/ipv4/netfilter/nf_log_ipv4.c
@@ -358,7 +358,6 @@ static void __net_exit nf_log_ipv4_net_exit(struct net *net)
358static struct pernet_operations nf_log_ipv4_net_ops = { 358static struct pernet_operations nf_log_ipv4_net_ops = {
359 .init = nf_log_ipv4_net_init, 359 .init = nf_log_ipv4_net_init,
360 .exit = nf_log_ipv4_net_exit, 360 .exit = nf_log_ipv4_net_exit,
361 .async = true,
362}; 361};
363 362
364static int __init nf_log_ipv4_init(void) 363static int __init nf_log_ipv4_init(void)
diff --git a/net/ipv4/ping.c b/net/ipv4/ping.c
index 1f24bc8273a0..05e47d777009 100644
--- a/net/ipv4/ping.c
+++ b/net/ipv4/ping.c
@@ -1204,7 +1204,6 @@ static void __net_exit ping_v4_proc_exit_net(struct net *net)
1204static struct pernet_operations ping_v4_net_ops = { 1204static struct pernet_operations ping_v4_net_ops = {
1205 .init = ping_v4_proc_init_net, 1205 .init = ping_v4_proc_init_net,
1206 .exit = ping_v4_proc_exit_net, 1206 .exit = ping_v4_proc_exit_net,
1207 .async = true,
1208}; 1207};
1209 1208
1210int __init ping_proc_init(void) 1209int __init ping_proc_init(void)
diff --git a/net/ipv4/proc.c b/net/ipv4/proc.c
index 80de2e659dcb..adfb75340275 100644
--- a/net/ipv4/proc.c
+++ b/net/ipv4/proc.c
@@ -549,7 +549,6 @@ static __net_exit void ip_proc_exit_net(struct net *net)
549static __net_initdata struct pernet_operations ip_proc_ops = { 549static __net_initdata struct pernet_operations ip_proc_ops = {
550 .init = ip_proc_init_net, 550 .init = ip_proc_init_net,
551 .exit = ip_proc_exit_net, 551 .exit = ip_proc_exit_net,
552 .async = true,
553}; 552};
554 553
555int __init ip_misc_proc_init(void) 554int __init ip_misc_proc_init(void)
diff --git a/net/ipv4/raw.c b/net/ipv4/raw.c
index 0ee2501a9027..1b4d3355624a 100644
--- a/net/ipv4/raw.c
+++ b/net/ipv4/raw.c
@@ -1154,7 +1154,6 @@ static __net_exit void raw_exit_net(struct net *net)
1154static __net_initdata struct pernet_operations raw_net_ops = { 1154static __net_initdata struct pernet_operations raw_net_ops = {
1155 .init = raw_init_net, 1155 .init = raw_init_net,
1156 .exit = raw_exit_net, 1156 .exit = raw_exit_net,
1157 .async = true,
1158}; 1157};
1159 1158
1160int __init raw_proc_init(void) 1159int __init raw_proc_init(void)
diff --git a/net/ipv4/route.c b/net/ipv4/route.c
index ce9bd5380d21..8322e479f299 100644
--- a/net/ipv4/route.c
+++ b/net/ipv4/route.c
@@ -418,7 +418,6 @@ static void __net_exit ip_rt_do_proc_exit(struct net *net)
418static struct pernet_operations ip_rt_proc_ops __net_initdata = { 418static struct pernet_operations ip_rt_proc_ops __net_initdata = {
419 .init = ip_rt_do_proc_init, 419 .init = ip_rt_do_proc_init,
420 .exit = ip_rt_do_proc_exit, 420 .exit = ip_rt_do_proc_exit,
421 .async = true,
422}; 421};
423 422
424static int __init ip_rt_proc_init(void) 423static int __init ip_rt_proc_init(void)
@@ -3017,7 +3016,6 @@ static __net_exit void sysctl_route_net_exit(struct net *net)
3017static __net_initdata struct pernet_operations sysctl_route_ops = { 3016static __net_initdata struct pernet_operations sysctl_route_ops = {
3018 .init = sysctl_route_net_init, 3017 .init = sysctl_route_net_init,
3019 .exit = sysctl_route_net_exit, 3018 .exit = sysctl_route_net_exit,
3020 .async = true,
3021}; 3019};
3022#endif 3020#endif
3023 3021
@@ -3031,7 +3029,6 @@ static __net_init int rt_genid_init(struct net *net)
3031 3029
3032static __net_initdata struct pernet_operations rt_genid_ops = { 3030static __net_initdata struct pernet_operations rt_genid_ops = {
3033 .init = rt_genid_init, 3031 .init = rt_genid_init,
3034 .async = true,
3035}; 3032};
3036 3033
3037static int __net_init ipv4_inetpeer_init(struct net *net) 3034static int __net_init ipv4_inetpeer_init(struct net *net)
@@ -3057,7 +3054,6 @@ static void __net_exit ipv4_inetpeer_exit(struct net *net)
3057static __net_initdata struct pernet_operations ipv4_inetpeer_ops = { 3054static __net_initdata struct pernet_operations ipv4_inetpeer_ops = {
3058 .init = ipv4_inetpeer_init, 3055 .init = ipv4_inetpeer_init,
3059 .exit = ipv4_inetpeer_exit, 3056 .exit = ipv4_inetpeer_exit,
3060 .async = true,
3061}; 3057};
3062 3058
3063#ifdef CONFIG_IP_ROUTE_CLASSID 3059#ifdef CONFIG_IP_ROUTE_CLASSID
diff --git a/net/ipv4/sysctl_net_ipv4.c b/net/ipv4/sysctl_net_ipv4.c
index 5b72d97693f8..4b195bac8ac0 100644
--- a/net/ipv4/sysctl_net_ipv4.c
+++ b/net/ipv4/sysctl_net_ipv4.c
@@ -1219,7 +1219,6 @@ static __net_exit void ipv4_sysctl_exit_net(struct net *net)
1219static __net_initdata struct pernet_operations ipv4_sysctl_ops = { 1219static __net_initdata struct pernet_operations ipv4_sysctl_ops = {
1220 .init = ipv4_sysctl_init_net, 1220 .init = ipv4_sysctl_init_net,
1221 .exit = ipv4_sysctl_exit_net, 1221 .exit = ipv4_sysctl_exit_net,
1222 .async = true,
1223}; 1222};
1224 1223
1225static __init int sysctl_ipv4_init(void) 1224static __init int sysctl_ipv4_init(void)
diff --git a/net/ipv4/tcp_ipv4.c b/net/ipv4/tcp_ipv4.c
index fec8b1fd7b63..9639334ebb7c 100644
--- a/net/ipv4/tcp_ipv4.c
+++ b/net/ipv4/tcp_ipv4.c
@@ -2391,7 +2391,6 @@ static void __net_exit tcp4_proc_exit_net(struct net *net)
2391static struct pernet_operations tcp4_net_ops = { 2391static struct pernet_operations tcp4_net_ops = {
2392 .init = tcp4_proc_init_net, 2392 .init = tcp4_proc_init_net,
2393 .exit = tcp4_proc_exit_net, 2393 .exit = tcp4_proc_exit_net,
2394 .async = true,
2395}; 2394};
2396 2395
2397int __init tcp4_proc_init(void) 2396int __init tcp4_proc_init(void)
@@ -2578,7 +2577,6 @@ static struct pernet_operations __net_initdata tcp_sk_ops = {
2578 .init = tcp_sk_init, 2577 .init = tcp_sk_init,
2579 .exit = tcp_sk_exit, 2578 .exit = tcp_sk_exit,
2580 .exit_batch = tcp_sk_exit_batch, 2579 .exit_batch = tcp_sk_exit_batch,
2581 .async = true,
2582}; 2580};
2583 2581
2584void __init tcp_v4_init(void) 2582void __init tcp_v4_init(void)
diff --git a/net/ipv4/tcp_metrics.c b/net/ipv4/tcp_metrics.c
index aa6fea9f3328..03b51cdcc731 100644
--- a/net/ipv4/tcp_metrics.c
+++ b/net/ipv4/tcp_metrics.c
@@ -1024,7 +1024,6 @@ static void __net_exit tcp_net_metrics_exit_batch(struct list_head *net_exit_lis
1024static __net_initdata struct pernet_operations tcp_net_metrics_ops = { 1024static __net_initdata struct pernet_operations tcp_net_metrics_ops = {
1025 .init = tcp_net_metrics_init, 1025 .init = tcp_net_metrics_init,
1026 .exit_batch = tcp_net_metrics_exit_batch, 1026 .exit_batch = tcp_net_metrics_exit_batch,
1027 .async = true,
1028}; 1027};
1029 1028
1030void __init tcp_metrics_init(void) 1029void __init tcp_metrics_init(void)
diff --git a/net/ipv4/udp.c b/net/ipv4/udp.c
index fb8f3a36bd14..f49e14cd3891 100644
--- a/net/ipv4/udp.c
+++ b/net/ipv4/udp.c
@@ -2756,7 +2756,6 @@ static void __net_exit udp4_proc_exit_net(struct net *net)
2756static struct pernet_operations udp4_net_ops = { 2756static struct pernet_operations udp4_net_ops = {
2757 .init = udp4_proc_init_net, 2757 .init = udp4_proc_init_net,
2758 .exit = udp4_proc_exit_net, 2758 .exit = udp4_proc_exit_net,
2759 .async = true,
2760}; 2759};
2761 2760
2762int __init udp4_proc_init(void) 2761int __init udp4_proc_init(void)
@@ -2843,7 +2842,6 @@ static int __net_init udp_sysctl_init(struct net *net)
2843 2842
2844static struct pernet_operations __net_initdata udp_sysctl_ops = { 2843static struct pernet_operations __net_initdata udp_sysctl_ops = {
2845 .init = udp_sysctl_init, 2844 .init = udp_sysctl_init,
2846 .async = true,
2847}; 2845};
2848 2846
2849void __init udp_init(void) 2847void __init udp_init(void)
diff --git a/net/ipv4/udplite.c b/net/ipv4/udplite.c
index 72f2c3806408..f96614e9b9a5 100644
--- a/net/ipv4/udplite.c
+++ b/net/ipv4/udplite.c
@@ -104,7 +104,6 @@ static void __net_exit udplite4_proc_exit_net(struct net *net)
104static struct pernet_operations udplite4_net_ops = { 104static struct pernet_operations udplite4_net_ops = {
105 .init = udplite4_proc_init_net, 105 .init = udplite4_proc_init_net,
106 .exit = udplite4_proc_exit_net, 106 .exit = udplite4_proc_exit_net,
107 .async = true,
108}; 107};
109 108
110static __init int udplite4_proc_init(void) 109static __init int udplite4_proc_init(void)
diff --git a/net/ipv4/xfrm4_policy.c b/net/ipv4/xfrm4_policy.c
index 6c76a757fa4a..d73a6d6652f6 100644
--- a/net/ipv4/xfrm4_policy.c
+++ b/net/ipv4/xfrm4_policy.c
@@ -367,7 +367,6 @@ static void __net_exit xfrm4_net_exit(struct net *net)
367static struct pernet_operations __net_initdata xfrm4_net_ops = { 367static struct pernet_operations __net_initdata xfrm4_net_ops = {
368 .init = xfrm4_net_init, 368 .init = xfrm4_net_init,
369 .exit = xfrm4_net_exit, 369 .exit = xfrm4_net_exit,
370 .async = true,
371}; 370};
372 371
373static void __init xfrm4_policy_init(void) 372static void __init xfrm4_policy_init(void)
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
index 189eac80f4ef..78cef00c9596 100644
--- a/net/ipv6/addrconf.c
+++ b/net/ipv6/addrconf.c
@@ -4282,7 +4282,6 @@ static void __net_exit if6_proc_net_exit(struct net *net)
4282static struct pernet_operations if6_proc_net_ops = { 4282static struct pernet_operations if6_proc_net_ops = {
4283 .init = if6_proc_net_init, 4283 .init = if6_proc_net_init,
4284 .exit = if6_proc_net_exit, 4284 .exit = if6_proc_net_exit,
4285 .async = true,
4286}; 4285};
4287 4286
4288int __init if6_proc_init(void) 4287int __init if6_proc_init(void)
@@ -6592,7 +6591,6 @@ static void __net_exit addrconf_exit_net(struct net *net)
6592static struct pernet_operations addrconf_ops = { 6591static struct pernet_operations addrconf_ops = {
6593 .init = addrconf_init_net, 6592 .init = addrconf_init_net,
6594 .exit = addrconf_exit_net, 6593 .exit = addrconf_exit_net,
6595 .async = true,
6596}; 6594};
6597 6595
6598static struct rtnl_af_ops inet6_ops __read_mostly = { 6596static struct rtnl_af_ops inet6_ops __read_mostly = {
diff --git a/net/ipv6/addrlabel.c b/net/ipv6/addrlabel.c
index ba2e63633370..1d6ced37ad71 100644
--- a/net/ipv6/addrlabel.c
+++ b/net/ipv6/addrlabel.c
@@ -344,7 +344,6 @@ static void __net_exit ip6addrlbl_net_exit(struct net *net)
344static struct pernet_operations ipv6_addr_label_ops = { 344static struct pernet_operations ipv6_addr_label_ops = {
345 .init = ip6addrlbl_net_init, 345 .init = ip6addrlbl_net_init,
346 .exit = ip6addrlbl_net_exit, 346 .exit = ip6addrlbl_net_exit,
347 .async = true,
348}; 347};
349 348
350int __init ipv6_addr_label_init(void) 349int __init ipv6_addr_label_init(void)
diff --git a/net/ipv6/af_inet6.c b/net/ipv6/af_inet6.c
index dbbe04018813..c1e292db04db 100644
--- a/net/ipv6/af_inet6.c
+++ b/net/ipv6/af_inet6.c
@@ -857,7 +857,6 @@ static void __net_exit inet6_net_exit(struct net *net)
857static struct pernet_operations inet6_net_ops = { 857static struct pernet_operations inet6_net_ops = {
858 .init = inet6_net_init, 858 .init = inet6_net_init,
859 .exit = inet6_net_exit, 859 .exit = inet6_net_exit,
860 .async = true,
861}; 860};
862 861
863static const struct ipv6_stub ipv6_stub_impl = { 862static const struct ipv6_stub ipv6_stub_impl = {
diff --git a/net/ipv6/fib6_rules.c b/net/ipv6/fib6_rules.c
index 00ef9467f3c0..df113c7b5fc8 100644
--- a/net/ipv6/fib6_rules.c
+++ b/net/ipv6/fib6_rules.c
@@ -397,7 +397,6 @@ static void __net_exit fib6_rules_net_exit(struct net *net)
397static struct pernet_operations fib6_rules_net_ops = { 397static struct pernet_operations fib6_rules_net_ops = {
398 .init = fib6_rules_net_init, 398 .init = fib6_rules_net_init,
399 .exit = fib6_rules_net_exit, 399 .exit = fib6_rules_net_exit,
400 .async = true,
401}; 400};
402 401
403int __init fib6_rules_init(void) 402int __init fib6_rules_init(void)
diff --git a/net/ipv6/icmp.c b/net/ipv6/icmp.c
index 6f84668be6ea..d8c4b6374377 100644
--- a/net/ipv6/icmp.c
+++ b/net/ipv6/icmp.c
@@ -998,7 +998,6 @@ static void __net_exit icmpv6_sk_exit(struct net *net)
998static struct pernet_operations icmpv6_sk_ops = { 998static struct pernet_operations icmpv6_sk_ops = {
999 .init = icmpv6_sk_init, 999 .init = icmpv6_sk_init,
1000 .exit = icmpv6_sk_exit, 1000 .exit = icmpv6_sk_exit,
1001 .async = true,
1002}; 1001};
1003 1002
1004int __init icmpv6_init(void) 1003int __init icmpv6_init(void)
diff --git a/net/ipv6/ila/ila_xlat.c b/net/ipv6/ila/ila_xlat.c
index e438699f000f..44c39c5f0638 100644
--- a/net/ipv6/ila/ila_xlat.c
+++ b/net/ipv6/ila/ila_xlat.c
@@ -613,7 +613,6 @@ static struct pernet_operations ila_net_ops = {
613 .exit = ila_exit_net, 613 .exit = ila_exit_net,
614 .id = &ila_net_id, 614 .id = &ila_net_id,
615 .size = sizeof(struct ila_net), 615 .size = sizeof(struct ila_net),
616 .async = true,
617}; 616};
618 617
619static int ila_xlat_addr(struct sk_buff *skb, bool sir2ila) 618static int ila_xlat_addr(struct sk_buff *skb, bool sir2ila)
diff --git a/net/ipv6/ip6_fib.c b/net/ipv6/ip6_fib.c
index 2f995e9e3050..908b8e5b615a 100644
--- a/net/ipv6/ip6_fib.c
+++ b/net/ipv6/ip6_fib.c
@@ -2161,7 +2161,6 @@ static void fib6_net_exit(struct net *net)
2161static struct pernet_operations fib6_net_ops = { 2161static struct pernet_operations fib6_net_ops = {
2162 .init = fib6_net_init, 2162 .init = fib6_net_init,
2163 .exit = fib6_net_exit, 2163 .exit = fib6_net_exit,
2164 .async = true,
2165}; 2164};
2166 2165
2167int __init fib6_init(void) 2166int __init fib6_init(void)
diff --git a/net/ipv6/ip6_flowlabel.c b/net/ipv6/ip6_flowlabel.c
index f75b06ba8325..c05c4e82a7ca 100644
--- a/net/ipv6/ip6_flowlabel.c
+++ b/net/ipv6/ip6_flowlabel.c
@@ -873,7 +873,6 @@ static void __net_exit ip6_flowlabel_net_exit(struct net *net)
873static struct pernet_operations ip6_flowlabel_net_ops = { 873static struct pernet_operations ip6_flowlabel_net_ops = {
874 .init = ip6_flowlabel_proc_init, 874 .init = ip6_flowlabel_proc_init,
875 .exit = ip6_flowlabel_net_exit, 875 .exit = ip6_flowlabel_net_exit,
876 .async = true,
877}; 876};
878 877
879int ip6_flowlabel_init(void) 878int ip6_flowlabel_init(void)
diff --git a/net/ipv6/ip6_gre.c b/net/ipv6/ip6_gre.c
index 3a98c694da5f..22e86557aca4 100644
--- a/net/ipv6/ip6_gre.c
+++ b/net/ipv6/ip6_gre.c
@@ -1528,7 +1528,6 @@ static struct pernet_operations ip6gre_net_ops = {
1528 .exit_batch = ip6gre_exit_batch_net, 1528 .exit_batch = ip6gre_exit_batch_net,
1529 .id = &ip6gre_net_id, 1529 .id = &ip6gre_net_id,
1530 .size = sizeof(struct ip6gre_net), 1530 .size = sizeof(struct ip6gre_net),
1531 .async = true,
1532}; 1531};
1533 1532
1534static int ip6gre_tunnel_validate(struct nlattr *tb[], struct nlattr *data[], 1533static int ip6gre_tunnel_validate(struct nlattr *tb[], struct nlattr *data[],
diff --git a/net/ipv6/ip6_tunnel.c b/net/ipv6/ip6_tunnel.c
index 456fcf942f95..df4c29f7d59f 100644
--- a/net/ipv6/ip6_tunnel.c
+++ b/net/ipv6/ip6_tunnel.c
@@ -2260,7 +2260,6 @@ static struct pernet_operations ip6_tnl_net_ops = {
2260 .exit_batch = ip6_tnl_exit_batch_net, 2260 .exit_batch = ip6_tnl_exit_batch_net,
2261 .id = &ip6_tnl_net_id, 2261 .id = &ip6_tnl_net_id,
2262 .size = sizeof(struct ip6_tnl_net), 2262 .size = sizeof(struct ip6_tnl_net),
2263 .async = true,
2264}; 2263};
2265 2264
2266/** 2265/**
diff --git a/net/ipv6/ip6_vti.c b/net/ipv6/ip6_vti.c
index a482b854eeea..60b771f49fb5 100644
--- a/net/ipv6/ip6_vti.c
+++ b/net/ipv6/ip6_vti.c
@@ -1148,7 +1148,6 @@ static struct pernet_operations vti6_net_ops = {
1148 .exit_batch = vti6_exit_batch_net, 1148 .exit_batch = vti6_exit_batch_net,
1149 .id = &vti6_net_id, 1149 .id = &vti6_net_id,
1150 .size = sizeof(struct vti6_net), 1150 .size = sizeof(struct vti6_net),
1151 .async = true,
1152}; 1151};
1153 1152
1154static struct xfrm6_protocol vti_esp6_protocol __read_mostly = { 1153static struct xfrm6_protocol vti_esp6_protocol __read_mostly = {
diff --git a/net/ipv6/ip6mr.c b/net/ipv6/ip6mr.c
index 1c8fa29d155a..298fd8b6ed17 100644
--- a/net/ipv6/ip6mr.c
+++ b/net/ipv6/ip6mr.c
@@ -1348,7 +1348,6 @@ static void __net_exit ip6mr_net_exit(struct net *net)
1348static struct pernet_operations ip6mr_net_ops = { 1348static struct pernet_operations ip6mr_net_ops = {
1349 .init = ip6mr_net_init, 1349 .init = ip6mr_net_init,
1350 .exit = ip6mr_net_exit, 1350 .exit = ip6mr_net_exit,
1351 .async = true,
1352}; 1351};
1353 1352
1354int __init ip6_mr_init(void) 1353int __init ip6_mr_init(void)
diff --git a/net/ipv6/mcast.c b/net/ipv6/mcast.c
index 1e4c2b6ebd78..793159d77d8a 100644
--- a/net/ipv6/mcast.c
+++ b/net/ipv6/mcast.c
@@ -2997,7 +2997,6 @@ static void __net_exit igmp6_net_exit(struct net *net)
2997static struct pernet_operations igmp6_net_ops = { 2997static struct pernet_operations igmp6_net_ops = {
2998 .init = igmp6_net_init, 2998 .init = igmp6_net_init,
2999 .exit = igmp6_net_exit, 2999 .exit = igmp6_net_exit,
3000 .async = true,
3001}; 3000};
3002 3001
3003int __init igmp6_init(void) 3002int __init igmp6_init(void)
diff --git a/net/ipv6/ndisc.c b/net/ipv6/ndisc.c
index d1d0b2fa7a07..9de4dfb126ba 100644
--- a/net/ipv6/ndisc.c
+++ b/net/ipv6/ndisc.c
@@ -1883,7 +1883,6 @@ static void __net_exit ndisc_net_exit(struct net *net)
1883static struct pernet_operations ndisc_net_ops = { 1883static struct pernet_operations ndisc_net_ops = {
1884 .init = ndisc_net_init, 1884 .init = ndisc_net_init,
1885 .exit = ndisc_net_exit, 1885 .exit = ndisc_net_exit,
1886 .async = true,
1887}; 1886};
1888 1887
1889int __init ndisc_init(void) 1888int __init ndisc_init(void)
diff --git a/net/ipv6/netfilter/ip6_tables.c b/net/ipv6/netfilter/ip6_tables.c
index 4de8ac1e5af4..62358b93bbac 100644
--- a/net/ipv6/netfilter/ip6_tables.c
+++ b/net/ipv6/netfilter/ip6_tables.c
@@ -1928,7 +1928,6 @@ static void __net_exit ip6_tables_net_exit(struct net *net)
1928static struct pernet_operations ip6_tables_net_ops = { 1928static struct pernet_operations ip6_tables_net_ops = {
1929 .init = ip6_tables_net_init, 1929 .init = ip6_tables_net_init,
1930 .exit = ip6_tables_net_exit, 1930 .exit = ip6_tables_net_exit,
1931 .async = true,
1932}; 1931};
1933 1932
1934static int __init ip6_tables_init(void) 1933static int __init ip6_tables_init(void)
diff --git a/net/ipv6/netfilter/ip6table_filter.c b/net/ipv6/netfilter/ip6table_filter.c
index 06561c84c0bc..1343077dde93 100644
--- a/net/ipv6/netfilter/ip6table_filter.c
+++ b/net/ipv6/netfilter/ip6table_filter.c
@@ -87,7 +87,6 @@ static void __net_exit ip6table_filter_net_exit(struct net *net)
87static struct pernet_operations ip6table_filter_net_ops = { 87static struct pernet_operations ip6table_filter_net_ops = {
88 .init = ip6table_filter_net_init, 88 .init = ip6table_filter_net_init,
89 .exit = ip6table_filter_net_exit, 89 .exit = ip6table_filter_net_exit,
90 .async = true,
91}; 90};
92 91
93static int __init ip6table_filter_init(void) 92static int __init ip6table_filter_init(void)
diff --git a/net/ipv6/netfilter/ip6table_mangle.c b/net/ipv6/netfilter/ip6table_mangle.c
index a11e25936b45..b0524b18c4fb 100644
--- a/net/ipv6/netfilter/ip6table_mangle.c
+++ b/net/ipv6/netfilter/ip6table_mangle.c
@@ -107,7 +107,6 @@ static void __net_exit ip6table_mangle_net_exit(struct net *net)
107 107
108static struct pernet_operations ip6table_mangle_net_ops = { 108static struct pernet_operations ip6table_mangle_net_ops = {
109 .exit = ip6table_mangle_net_exit, 109 .exit = ip6table_mangle_net_exit,
110 .async = true,
111}; 110};
112 111
113static int __init ip6table_mangle_init(void) 112static int __init ip6table_mangle_init(void)
diff --git a/net/ipv6/netfilter/ip6table_nat.c b/net/ipv6/netfilter/ip6table_nat.c
index 4475fd300bb6..47306e45a80a 100644
--- a/net/ipv6/netfilter/ip6table_nat.c
+++ b/net/ipv6/netfilter/ip6table_nat.c
@@ -131,7 +131,6 @@ static void __net_exit ip6table_nat_net_exit(struct net *net)
131 131
132static struct pernet_operations ip6table_nat_net_ops = { 132static struct pernet_operations ip6table_nat_net_ops = {
133 .exit = ip6table_nat_net_exit, 133 .exit = ip6table_nat_net_exit,
134 .async = true,
135}; 134};
136 135
137static int __init ip6table_nat_init(void) 136static int __init ip6table_nat_init(void)
diff --git a/net/ipv6/netfilter/ip6table_raw.c b/net/ipv6/netfilter/ip6table_raw.c
index a88f3b1995b1..710fa0806c37 100644
--- a/net/ipv6/netfilter/ip6table_raw.c
+++ b/net/ipv6/netfilter/ip6table_raw.c
@@ -75,7 +75,6 @@ static void __net_exit ip6table_raw_net_exit(struct net *net)
75 75
76static struct pernet_operations ip6table_raw_net_ops = { 76static struct pernet_operations ip6table_raw_net_ops = {
77 .exit = ip6table_raw_net_exit, 77 .exit = ip6table_raw_net_exit,
78 .async = true,
79}; 78};
80 79
81static int __init ip6table_raw_init(void) 80static int __init ip6table_raw_init(void)
diff --git a/net/ipv6/netfilter/ip6table_security.c b/net/ipv6/netfilter/ip6table_security.c
index 320048c008dc..cf26ccb04056 100644
--- a/net/ipv6/netfilter/ip6table_security.c
+++ b/net/ipv6/netfilter/ip6table_security.c
@@ -74,7 +74,6 @@ static void __net_exit ip6table_security_net_exit(struct net *net)
74 74
75static struct pernet_operations ip6table_security_net_ops = { 75static struct pernet_operations ip6table_security_net_ops = {
76 .exit = ip6table_security_net_exit, 76 .exit = ip6table_security_net_exit,
77 .async = true,
78}; 77};
79 78
80static int __init ip6table_security_init(void) 79static int __init ip6table_security_init(void)
diff --git a/net/ipv6/netfilter/nf_conntrack_l3proto_ipv6.c b/net/ipv6/netfilter/nf_conntrack_l3proto_ipv6.c
index ba54bb3bd1e4..663827ee3cf8 100644
--- a/net/ipv6/netfilter/nf_conntrack_l3proto_ipv6.c
+++ b/net/ipv6/netfilter/nf_conntrack_l3proto_ipv6.c
@@ -401,7 +401,6 @@ static struct pernet_operations ipv6_net_ops = {
401 .exit = ipv6_net_exit, 401 .exit = ipv6_net_exit,
402 .id = &conntrack6_net_id, 402 .id = &conntrack6_net_id,
403 .size = sizeof(struct conntrack6_net), 403 .size = sizeof(struct conntrack6_net),
404 .async = true,
405}; 404};
406 405
407static int __init nf_conntrack_l3proto_ipv6_init(void) 406static int __init nf_conntrack_l3proto_ipv6_init(void)
diff --git a/net/ipv6/netfilter/nf_conntrack_reasm.c b/net/ipv6/netfilter/nf_conntrack_reasm.c
index 34136fe80ed5..b84ce3e6d728 100644
--- a/net/ipv6/netfilter/nf_conntrack_reasm.c
+++ b/net/ipv6/netfilter/nf_conntrack_reasm.c
@@ -646,7 +646,6 @@ static void nf_ct_net_exit(struct net *net)
646static struct pernet_operations nf_ct_net_ops = { 646static struct pernet_operations nf_ct_net_ops = {
647 .init = nf_ct_net_init, 647 .init = nf_ct_net_init,
648 .exit = nf_ct_net_exit, 648 .exit = nf_ct_net_exit,
649 .async = true,
650}; 649};
651 650
652int nf_ct_frag6_init(void) 651int nf_ct_frag6_init(void)
diff --git a/net/ipv6/netfilter/nf_defrag_ipv6_hooks.c b/net/ipv6/netfilter/nf_defrag_ipv6_hooks.c
index 32f98bc06900..c87b48359e8f 100644
--- a/net/ipv6/netfilter/nf_defrag_ipv6_hooks.c
+++ b/net/ipv6/netfilter/nf_defrag_ipv6_hooks.c
@@ -103,7 +103,6 @@ static void __net_exit defrag6_net_exit(struct net *net)
103 103
104static struct pernet_operations defrag6_net_ops = { 104static struct pernet_operations defrag6_net_ops = {
105 .exit = defrag6_net_exit, 105 .exit = defrag6_net_exit,
106 .async = true,
107}; 106};
108 107
109static int __init nf_defrag_init(void) 108static int __init nf_defrag_init(void)
diff --git a/net/ipv6/netfilter/nf_log_ipv6.c b/net/ipv6/netfilter/nf_log_ipv6.c
index 0220e584589c..b397a8fe88b9 100644
--- a/net/ipv6/netfilter/nf_log_ipv6.c
+++ b/net/ipv6/netfilter/nf_log_ipv6.c
@@ -390,7 +390,6 @@ static void __net_exit nf_log_ipv6_net_exit(struct net *net)
390static struct pernet_operations nf_log_ipv6_net_ops = { 390static struct pernet_operations nf_log_ipv6_net_ops = {
391 .init = nf_log_ipv6_net_init, 391 .init = nf_log_ipv6_net_init,
392 .exit = nf_log_ipv6_net_exit, 392 .exit = nf_log_ipv6_net_exit,
393 .async = true,
394}; 393};
395 394
396static int __init nf_log_ipv6_init(void) 395static int __init nf_log_ipv6_init(void)
diff --git a/net/ipv6/ping.c b/net/ipv6/ping.c
index 318c6e914234..d12c55dad7d1 100644
--- a/net/ipv6/ping.c
+++ b/net/ipv6/ping.c
@@ -240,7 +240,6 @@ static void __net_init ping_v6_proc_exit_net(struct net *net)
240static struct pernet_operations ping_v6_net_ops = { 240static struct pernet_operations ping_v6_net_ops = {
241 .init = ping_v6_proc_init_net, 241 .init = ping_v6_proc_init_net,
242 .exit = ping_v6_proc_exit_net, 242 .exit = ping_v6_proc_exit_net,
243 .async = true,
244}; 243};
245#endif 244#endif
246 245
diff --git a/net/ipv6/proc.c b/net/ipv6/proc.c
index f9891fa672f3..6e57028d2e91 100644
--- a/net/ipv6/proc.c
+++ b/net/ipv6/proc.c
@@ -343,7 +343,6 @@ static void __net_exit ipv6_proc_exit_net(struct net *net)
343static struct pernet_operations ipv6_proc_ops = { 343static struct pernet_operations ipv6_proc_ops = {
344 .init = ipv6_proc_init_net, 344 .init = ipv6_proc_init_net,
345 .exit = ipv6_proc_exit_net, 345 .exit = ipv6_proc_exit_net,
346 .async = true,
347}; 346};
348 347
349int __init ipv6_misc_proc_init(void) 348int __init ipv6_misc_proc_init(void)
diff --git a/net/ipv6/raw.c b/net/ipv6/raw.c
index b5e5de732494..5eb9b08947ed 100644
--- a/net/ipv6/raw.c
+++ b/net/ipv6/raw.c
@@ -1332,7 +1332,6 @@ static void __net_exit raw6_exit_net(struct net *net)
1332static struct pernet_operations raw6_net_ops = { 1332static struct pernet_operations raw6_net_ops = {
1333 .init = raw6_init_net, 1333 .init = raw6_init_net,
1334 .exit = raw6_exit_net, 1334 .exit = raw6_exit_net,
1335 .async = true,
1336}; 1335};
1337 1336
1338int __init raw6_proc_init(void) 1337int __init raw6_proc_init(void)
diff --git a/net/ipv6/reassembly.c b/net/ipv6/reassembly.c
index b5da69c83123..afbc000ad4f2 100644
--- a/net/ipv6/reassembly.c
+++ b/net/ipv6/reassembly.c
@@ -733,7 +733,6 @@ static void __net_exit ipv6_frags_exit_net(struct net *net)
733static struct pernet_operations ip6_frags_ops = { 733static struct pernet_operations ip6_frags_ops = {
734 .init = ipv6_frags_init_net, 734 .init = ipv6_frags_init_net,
735 .exit = ipv6_frags_exit_net, 735 .exit = ipv6_frags_exit_net,
736 .async = true,
737}; 736};
738 737
739int __init ipv6_frag_init(void) 738int __init ipv6_frag_init(void)
diff --git a/net/ipv6/route.c b/net/ipv6/route.c
index 1d0eaa69874d..ba8d5df50ebe 100644
--- a/net/ipv6/route.c
+++ b/net/ipv6/route.c
@@ -5083,7 +5083,6 @@ static void __net_exit ip6_route_net_exit_late(struct net *net)
5083static struct pernet_operations ip6_route_net_ops = { 5083static struct pernet_operations ip6_route_net_ops = {
5084 .init = ip6_route_net_init, 5084 .init = ip6_route_net_init,
5085 .exit = ip6_route_net_exit, 5085 .exit = ip6_route_net_exit,
5086 .async = true,
5087}; 5086};
5088 5087
5089static int __net_init ipv6_inetpeer_init(struct net *net) 5088static int __net_init ipv6_inetpeer_init(struct net *net)
@@ -5109,13 +5108,11 @@ static void __net_exit ipv6_inetpeer_exit(struct net *net)
5109static struct pernet_operations ipv6_inetpeer_ops = { 5108static struct pernet_operations ipv6_inetpeer_ops = {
5110 .init = ipv6_inetpeer_init, 5109 .init = ipv6_inetpeer_init,
5111 .exit = ipv6_inetpeer_exit, 5110 .exit = ipv6_inetpeer_exit,
5112 .async = true,
5113}; 5111};
5114 5112
5115static struct pernet_operations ip6_route_net_late_ops = { 5113static struct pernet_operations ip6_route_net_late_ops = {
5116 .init = ip6_route_net_init_late, 5114 .init = ip6_route_net_init_late,
5117 .exit = ip6_route_net_exit_late, 5115 .exit = ip6_route_net_exit_late,
5118 .async = true,
5119}; 5116};
5120 5117
5121static struct notifier_block ip6_route_dev_notifier = { 5118static struct notifier_block ip6_route_dev_notifier = {
diff --git a/net/ipv6/seg6.c b/net/ipv6/seg6.c
index c3f13c3bd8a9..7f5621d09571 100644
--- a/net/ipv6/seg6.c
+++ b/net/ipv6/seg6.c
@@ -395,7 +395,6 @@ static void __net_exit seg6_net_exit(struct net *net)
395static struct pernet_operations ip6_segments_ops = { 395static struct pernet_operations ip6_segments_ops = {
396 .init = seg6_net_init, 396 .init = seg6_net_init,
397 .exit = seg6_net_exit, 397 .exit = seg6_net_exit,
398 .async = true,
399}; 398};
400 399
401static const struct genl_ops seg6_genl_ops[] = { 400static const struct genl_ops seg6_genl_ops[] = {
diff --git a/net/ipv6/sit.c b/net/ipv6/sit.c
index 8a4f8fddd812..1522bcfd253f 100644
--- a/net/ipv6/sit.c
+++ b/net/ipv6/sit.c
@@ -1888,7 +1888,6 @@ static struct pernet_operations sit_net_ops = {
1888 .exit_batch = sit_exit_batch_net, 1888 .exit_batch = sit_exit_batch_net,
1889 .id = &sit_net_id, 1889 .id = &sit_net_id,
1890 .size = sizeof(struct sit_net), 1890 .size = sizeof(struct sit_net),
1891 .async = true,
1892}; 1891};
1893 1892
1894static void __exit sit_cleanup(void) 1893static void __exit sit_cleanup(void)
diff --git a/net/ipv6/sysctl_net_ipv6.c b/net/ipv6/sysctl_net_ipv6.c
index 966c42af92f4..6fbdef630152 100644
--- a/net/ipv6/sysctl_net_ipv6.c
+++ b/net/ipv6/sysctl_net_ipv6.c
@@ -278,7 +278,6 @@ static void __net_exit ipv6_sysctl_net_exit(struct net *net)
278static struct pernet_operations ipv6_sysctl_net_ops = { 278static struct pernet_operations ipv6_sysctl_net_ops = {
279 .init = ipv6_sysctl_net_init, 279 .init = ipv6_sysctl_net_init,
280 .exit = ipv6_sysctl_net_exit, 280 .exit = ipv6_sysctl_net_exit,
281 .async = true,
282}; 281};
283 282
284static struct ctl_table_header *ip6_header; 283static struct ctl_table_header *ip6_header;
diff --git a/net/ipv6/tcp_ipv6.c b/net/ipv6/tcp_ipv6.c
index 5425d7b100ee..883df0ad5bfe 100644
--- a/net/ipv6/tcp_ipv6.c
+++ b/net/ipv6/tcp_ipv6.c
@@ -2007,7 +2007,6 @@ static struct pernet_operations tcpv6_net_ops = {
2007 .init = tcpv6_net_init, 2007 .init = tcpv6_net_init,
2008 .exit = tcpv6_net_exit, 2008 .exit = tcpv6_net_exit,
2009 .exit_batch = tcpv6_net_exit_batch, 2009 .exit_batch = tcpv6_net_exit_batch,
2010 .async = true,
2011}; 2010};
2012 2011
2013int __init tcpv6_init(void) 2012int __init tcpv6_init(void)
diff --git a/net/ipv6/udplite.c b/net/ipv6/udplite.c
index f3839780dc31..14ae32bb1f3d 100644
--- a/net/ipv6/udplite.c
+++ b/net/ipv6/udplite.c
@@ -123,7 +123,6 @@ static void __net_exit udplite6_proc_exit_net(struct net *net)
123static struct pernet_operations udplite6_net_ops = { 123static struct pernet_operations udplite6_net_ops = {
124 .init = udplite6_proc_init_net, 124 .init = udplite6_proc_init_net,
125 .exit = udplite6_proc_exit_net, 125 .exit = udplite6_proc_exit_net,
126 .async = true,
127}; 126};
128 127
129int __init udplite6_proc_init(void) 128int __init udplite6_proc_init(void)
diff --git a/net/ipv6/xfrm6_policy.c b/net/ipv6/xfrm6_policy.c
index cbb270bd81b0..416fe67271a9 100644
--- a/net/ipv6/xfrm6_policy.c
+++ b/net/ipv6/xfrm6_policy.c
@@ -400,7 +400,6 @@ static void __net_exit xfrm6_net_exit(struct net *net)
400static struct pernet_operations xfrm6_net_ops = { 400static struct pernet_operations xfrm6_net_ops = {
401 .init = xfrm6_net_init, 401 .init = xfrm6_net_init,
402 .exit = xfrm6_net_exit, 402 .exit = xfrm6_net_exit,
403 .async = true,
404}; 403};
405 404
406int __init xfrm6_init(void) 405int __init xfrm6_init(void)
diff --git a/net/ipv6/xfrm6_tunnel.c b/net/ipv6/xfrm6_tunnel.c
index a9673619e0e9..f85f0d7480ac 100644
--- a/net/ipv6/xfrm6_tunnel.c
+++ b/net/ipv6/xfrm6_tunnel.c
@@ -353,7 +353,6 @@ static struct pernet_operations xfrm6_tunnel_net_ops = {
353 .exit = xfrm6_tunnel_net_exit, 353 .exit = xfrm6_tunnel_net_exit,
354 .id = &xfrm6_tunnel_net_id, 354 .id = &xfrm6_tunnel_net_id,
355 .size = sizeof(struct xfrm6_tunnel_net), 355 .size = sizeof(struct xfrm6_tunnel_net),
356 .async = true,
357}; 356};
358 357
359static int __init xfrm6_tunnel_init(void) 358static int __init xfrm6_tunnel_init(void)
diff --git a/net/kcm/kcmproc.c b/net/kcm/kcmproc.c
index 4c2e9907f254..1fac92543094 100644
--- a/net/kcm/kcmproc.c
+++ b/net/kcm/kcmproc.c
@@ -433,7 +433,6 @@ static void kcm_proc_exit_net(struct net *net)
433static struct pernet_operations kcm_net_ops = { 433static struct pernet_operations kcm_net_ops = {
434 .init = kcm_proc_init_net, 434 .init = kcm_proc_init_net,
435 .exit = kcm_proc_exit_net, 435 .exit = kcm_proc_exit_net,
436 .async = true,
437}; 436};
438 437
439int __init kcm_proc_init(void) 438int __init kcm_proc_init(void)
diff --git a/net/kcm/kcmsock.c b/net/kcm/kcmsock.c
index 516cfad71b85..dc76bc346829 100644
--- a/net/kcm/kcmsock.c
+++ b/net/kcm/kcmsock.c
@@ -2028,7 +2028,6 @@ static struct pernet_operations kcm_net_ops = {
2028 .exit = kcm_exit_net, 2028 .exit = kcm_exit_net,
2029 .id = &kcm_net_id, 2029 .id = &kcm_net_id,
2030 .size = sizeof(struct kcm_net), 2030 .size = sizeof(struct kcm_net),
2031 .async = true,
2032}; 2031};
2033 2032
2034static int __init kcm_init(void) 2033static int __init kcm_init(void)
diff --git a/net/key/af_key.c b/net/key/af_key.c
index 3ac08ab26207..7e2e7188e7f4 100644
--- a/net/key/af_key.c
+++ b/net/key/af_key.c
@@ -3863,7 +3863,6 @@ static struct pernet_operations pfkey_net_ops = {
3863 .exit = pfkey_net_exit, 3863 .exit = pfkey_net_exit,
3864 .id = &pfkey_net_id, 3864 .id = &pfkey_net_id,
3865 .size = sizeof(struct netns_pfkey), 3865 .size = sizeof(struct netns_pfkey),
3866 .async = true,
3867}; 3866};
3868 3867
3869static void __exit ipsec_pfkey_exit(void) 3868static void __exit ipsec_pfkey_exit(void)
diff --git a/net/l2tp/l2tp_core.c b/net/l2tp/l2tp_core.c
index b86868da50d4..14b67dfacc4b 100644
--- a/net/l2tp/l2tp_core.c
+++ b/net/l2tp/l2tp_core.c
@@ -1789,7 +1789,6 @@ static struct pernet_operations l2tp_net_ops = {
1789 .exit = l2tp_exit_net, 1789 .exit = l2tp_exit_net,
1790 .id = &l2tp_net_id, 1790 .id = &l2tp_net_id,
1791 .size = sizeof(struct l2tp_net), 1791 .size = sizeof(struct l2tp_net),
1792 .async = true,
1793}; 1792};
1794 1793
1795static int __init l2tp_init(void) 1794static int __init l2tp_init(void)
diff --git a/net/l2tp/l2tp_ppp.c b/net/l2tp/l2tp_ppp.c
index f24504efe729..d6deca11da19 100644
--- a/net/l2tp/l2tp_ppp.c
+++ b/net/l2tp/l2tp_ppp.c
@@ -1762,7 +1762,6 @@ static struct pernet_operations pppol2tp_net_ops = {
1762 .init = pppol2tp_init_net, 1762 .init = pppol2tp_init_net,
1763 .exit = pppol2tp_exit_net, 1763 .exit = pppol2tp_exit_net,
1764 .id = &pppol2tp_net_id, 1764 .id = &pppol2tp_net_id,
1765 .async = true,
1766}; 1765};
1767 1766
1768/***************************************************************************** 1767/*****************************************************************************
diff --git a/net/mpls/af_mpls.c b/net/mpls/af_mpls.c
index d4a89a8be013..7a4de6d618b1 100644
--- a/net/mpls/af_mpls.c
+++ b/net/mpls/af_mpls.c
@@ -2488,7 +2488,6 @@ static void mpls_net_exit(struct net *net)
2488static struct pernet_operations mpls_net_ops = { 2488static struct pernet_operations mpls_net_ops = {
2489 .init = mpls_net_init, 2489 .init = mpls_net_init,
2490 .exit = mpls_net_exit, 2490 .exit = mpls_net_exit,
2491 .async = true,
2492}; 2491};
2493 2492
2494static struct rtnl_af_ops mpls_af_ops __read_mostly = { 2493static struct rtnl_af_ops mpls_af_ops __read_mostly = {
diff --git a/net/netfilter/core.c b/net/netfilter/core.c
index d72cc786c7b7..0f6b8172fb9a 100644
--- a/net/netfilter/core.c
+++ b/net/netfilter/core.c
@@ -629,7 +629,6 @@ static void __net_exit netfilter_net_exit(struct net *net)
629static struct pernet_operations netfilter_net_ops = { 629static struct pernet_operations netfilter_net_ops = {
630 .init = netfilter_net_init, 630 .init = netfilter_net_init,
631 .exit = netfilter_net_exit, 631 .exit = netfilter_net_exit,
632 .async = true,
633}; 632};
634 633
635int __init netfilter_init(void) 634int __init netfilter_init(void)
diff --git a/net/netfilter/ipset/ip_set_core.c b/net/netfilter/ipset/ip_set_core.c
index 2523ebe2b3cc..bc4bd247bb7d 100644
--- a/net/netfilter/ipset/ip_set_core.c
+++ b/net/netfilter/ipset/ip_set_core.c
@@ -2095,7 +2095,6 @@ static struct pernet_operations ip_set_net_ops = {
2095 .exit = ip_set_net_exit, 2095 .exit = ip_set_net_exit,
2096 .id = &ip_set_net_id, 2096 .id = &ip_set_net_id,
2097 .size = sizeof(struct ip_set_net), 2097 .size = sizeof(struct ip_set_net),
2098 .async = true,
2099}; 2098};
2100 2099
2101static int __init 2100static int __init
diff --git a/net/netfilter/ipvs/ip_vs_core.c b/net/netfilter/ipvs/ip_vs_core.c
index 6a6cb9db030b..5f6f73cf2174 100644
--- a/net/netfilter/ipvs/ip_vs_core.c
+++ b/net/netfilter/ipvs/ip_vs_core.c
@@ -2289,12 +2289,10 @@ static struct pernet_operations ipvs_core_ops = {
2289 .exit = __ip_vs_cleanup, 2289 .exit = __ip_vs_cleanup,
2290 .id = &ip_vs_net_id, 2290 .id = &ip_vs_net_id,
2291 .size = sizeof(struct netns_ipvs), 2291 .size = sizeof(struct netns_ipvs),
2292 .async = true,
2293}; 2292};
2294 2293
2295static struct pernet_operations ipvs_core_dev_ops = { 2294static struct pernet_operations ipvs_core_dev_ops = {
2296 .exit = __ip_vs_dev_cleanup, 2295 .exit = __ip_vs_dev_cleanup,
2297 .async = true,
2298}; 2296};
2299 2297
2300/* 2298/*
diff --git a/net/netfilter/ipvs/ip_vs_ftp.c b/net/netfilter/ipvs/ip_vs_ftp.c
index 8b25aab41928..58d5d05aec24 100644
--- a/net/netfilter/ipvs/ip_vs_ftp.c
+++ b/net/netfilter/ipvs/ip_vs_ftp.c
@@ -479,7 +479,6 @@ static void __ip_vs_ftp_exit(struct net *net)
479static struct pernet_operations ip_vs_ftp_ops = { 479static struct pernet_operations ip_vs_ftp_ops = {
480 .init = __ip_vs_ftp_init, 480 .init = __ip_vs_ftp_init,
481 .exit = __ip_vs_ftp_exit, 481 .exit = __ip_vs_ftp_exit,
482 .async = true,
483}; 482};
484 483
485static int __init ip_vs_ftp_init(void) 484static int __init ip_vs_ftp_init(void)
diff --git a/net/netfilter/ipvs/ip_vs_lblc.c b/net/netfilter/ipvs/ip_vs_lblc.c
index 6a340c94c4b8..d625179de485 100644
--- a/net/netfilter/ipvs/ip_vs_lblc.c
+++ b/net/netfilter/ipvs/ip_vs_lblc.c
@@ -604,7 +604,6 @@ static void __net_exit __ip_vs_lblc_exit(struct net *net) { }
604static struct pernet_operations ip_vs_lblc_ops = { 604static struct pernet_operations ip_vs_lblc_ops = {
605 .init = __ip_vs_lblc_init, 605 .init = __ip_vs_lblc_init,
606 .exit = __ip_vs_lblc_exit, 606 .exit = __ip_vs_lblc_exit,
607 .async = true,
608}; 607};
609 608
610static int __init ip_vs_lblc_init(void) 609static int __init ip_vs_lblc_init(void)
diff --git a/net/netfilter/ipvs/ip_vs_lblcr.c b/net/netfilter/ipvs/ip_vs_lblcr.c
index 0627881128da..84c57b62a588 100644
--- a/net/netfilter/ipvs/ip_vs_lblcr.c
+++ b/net/netfilter/ipvs/ip_vs_lblcr.c
@@ -789,7 +789,6 @@ static void __net_exit __ip_vs_lblcr_exit(struct net *net) { }
789static struct pernet_operations ip_vs_lblcr_ops = { 789static struct pernet_operations ip_vs_lblcr_ops = {
790 .init = __ip_vs_lblcr_init, 790 .init = __ip_vs_lblcr_init,
791 .exit = __ip_vs_lblcr_exit, 791 .exit = __ip_vs_lblcr_exit,
792 .async = true,
793}; 792};
794 793
795static int __init ip_vs_lblcr_init(void) 794static int __init ip_vs_lblcr_init(void)
diff --git a/net/netfilter/nf_conntrack_netlink.c b/net/netfilter/nf_conntrack_netlink.c
index 8884d302d33a..dd177ebee9aa 100644
--- a/net/netfilter/nf_conntrack_netlink.c
+++ b/net/netfilter/nf_conntrack_netlink.c
@@ -3417,7 +3417,6 @@ static void __net_exit ctnetlink_net_exit_batch(struct list_head *net_exit_list)
3417static struct pernet_operations ctnetlink_net_ops = { 3417static struct pernet_operations ctnetlink_net_ops = {
3418 .init = ctnetlink_net_init, 3418 .init = ctnetlink_net_init,
3419 .exit_batch = ctnetlink_net_exit_batch, 3419 .exit_batch = ctnetlink_net_exit_batch,
3420 .async = true,
3421}; 3420};
3422 3421
3423static int __init ctnetlink_init(void) 3422static int __init ctnetlink_init(void)
diff --git a/net/netfilter/nf_conntrack_proto_gre.c b/net/netfilter/nf_conntrack_proto_gre.c
index 9bcd72fe91f9..d049ea5a3770 100644
--- a/net/netfilter/nf_conntrack_proto_gre.c
+++ b/net/netfilter/nf_conntrack_proto_gre.c
@@ -406,7 +406,6 @@ static struct pernet_operations proto_gre_net_ops = {
406 .exit = proto_gre_net_exit, 406 .exit = proto_gre_net_exit,
407 .id = &proto_gre_net_id, 407 .id = &proto_gre_net_id,
408 .size = sizeof(struct netns_proto_gre), 408 .size = sizeof(struct netns_proto_gre),
409 .async = true,
410}; 409};
411 410
412static int __init nf_ct_proto_gre_init(void) 411static int __init nf_ct_proto_gre_init(void)
diff --git a/net/netfilter/nf_conntrack_standalone.c b/net/netfilter/nf_conntrack_standalone.c
index 98844c87d01e..037fec54c850 100644
--- a/net/netfilter/nf_conntrack_standalone.c
+++ b/net/netfilter/nf_conntrack_standalone.c
@@ -705,7 +705,6 @@ static void nf_conntrack_pernet_exit(struct list_head *net_exit_list)
705static struct pernet_operations nf_conntrack_net_ops = { 705static struct pernet_operations nf_conntrack_net_ops = {
706 .init = nf_conntrack_pernet_init, 706 .init = nf_conntrack_pernet_init,
707 .exit_batch = nf_conntrack_pernet_exit, 707 .exit_batch = nf_conntrack_pernet_exit,
708 .async = true,
709}; 708};
710 709
711static int __init nf_conntrack_standalone_init(void) 710static int __init nf_conntrack_standalone_init(void)
diff --git a/net/netfilter/nf_log.c b/net/netfilter/nf_log.c
index a964e4d356cc..6d0357817cda 100644
--- a/net/netfilter/nf_log.c
+++ b/net/netfilter/nf_log.c
@@ -577,7 +577,6 @@ static void __net_exit nf_log_net_exit(struct net *net)
577static struct pernet_operations nf_log_net_ops = { 577static struct pernet_operations nf_log_net_ops = {
578 .init = nf_log_net_init, 578 .init = nf_log_net_init,
579 .exit = nf_log_net_exit, 579 .exit = nf_log_net_exit,
580 .async = true,
581}; 580};
582 581
583int __init netfilter_log_init(void) 582int __init netfilter_log_init(void)
diff --git a/net/netfilter/nf_log_netdev.c b/net/netfilter/nf_log_netdev.c
index 254c2c6bde48..350eb147754d 100644
--- a/net/netfilter/nf_log_netdev.c
+++ b/net/netfilter/nf_log_netdev.c
@@ -47,7 +47,6 @@ static void __net_exit nf_log_netdev_net_exit(struct net *net)
47static struct pernet_operations nf_log_netdev_net_ops = { 47static struct pernet_operations nf_log_netdev_net_ops = {
48 .init = nf_log_netdev_net_init, 48 .init = nf_log_netdev_net_init,
49 .exit = nf_log_netdev_net_exit, 49 .exit = nf_log_netdev_net_exit,
50 .async = true,
51}; 50};
52 51
53static int __init nf_log_netdev_init(void) 52static int __init nf_log_netdev_init(void)
diff --git a/net/netfilter/nf_synproxy_core.c b/net/netfilter/nf_synproxy_core.c
index 8f16fd27132d..6039b350abbe 100644
--- a/net/netfilter/nf_synproxy_core.c
+++ b/net/netfilter/nf_synproxy_core.c
@@ -398,7 +398,6 @@ static struct pernet_operations synproxy_net_ops = {
398 .exit = synproxy_net_exit, 398 .exit = synproxy_net_exit,
399 .id = &synproxy_net_id, 399 .id = &synproxy_net_id,
400 .size = sizeof(struct synproxy_net), 400 .size = sizeof(struct synproxy_net),
401 .async = true,
402}; 401};
403 402
404static int __init synproxy_core_init(void) 403static int __init synproxy_core_init(void)
diff --git a/net/netfilter/nf_tables_api.c b/net/netfilter/nf_tables_api.c
index fd13d28e4ca7..c4acc7340eb1 100644
--- a/net/netfilter/nf_tables_api.c
+++ b/net/netfilter/nf_tables_api.c
@@ -6597,7 +6597,6 @@ static void __net_exit nf_tables_exit_net(struct net *net)
6597static struct pernet_operations nf_tables_net_ops = { 6597static struct pernet_operations nf_tables_net_ops = {
6598 .init = nf_tables_init_net, 6598 .init = nf_tables_init_net,
6599 .exit = nf_tables_exit_net, 6599 .exit = nf_tables_exit_net,
6600 .async = true,
6601}; 6600};
6602 6601
6603static int __init nf_tables_module_init(void) 6602static int __init nf_tables_module_init(void)
diff --git a/net/netfilter/nfnetlink.c b/net/netfilter/nfnetlink.c
index 84fc4954862d..03ead8a9e90c 100644
--- a/net/netfilter/nfnetlink.c
+++ b/net/netfilter/nfnetlink.c
@@ -566,7 +566,6 @@ static void __net_exit nfnetlink_net_exit_batch(struct list_head *net_exit_list)
566static struct pernet_operations nfnetlink_net_ops = { 566static struct pernet_operations nfnetlink_net_ops = {
567 .init = nfnetlink_net_init, 567 .init = nfnetlink_net_init,
568 .exit_batch = nfnetlink_net_exit_batch, 568 .exit_batch = nfnetlink_net_exit_batch,
569 .async = true,
570}; 569};
571 570
572static int __init nfnetlink_init(void) 571static int __init nfnetlink_init(void)
diff --git a/net/netfilter/nfnetlink_acct.c b/net/netfilter/nfnetlink_acct.c
index 8d9f18bb8840..88d427f9f9e6 100644
--- a/net/netfilter/nfnetlink_acct.c
+++ b/net/netfilter/nfnetlink_acct.c
@@ -515,7 +515,6 @@ static void __net_exit nfnl_acct_net_exit(struct net *net)
515static struct pernet_operations nfnl_acct_ops = { 515static struct pernet_operations nfnl_acct_ops = {
516 .init = nfnl_acct_net_init, 516 .init = nfnl_acct_net_init,
517 .exit = nfnl_acct_net_exit, 517 .exit = nfnl_acct_net_exit,
518 .async = true,
519}; 518};
520 519
521static int __init nfnl_acct_init(void) 520static int __init nfnl_acct_init(void)
diff --git a/net/netfilter/nfnetlink_cttimeout.c b/net/netfilter/nfnetlink_cttimeout.c
index 6819300f7fb7..95b04702a655 100644
--- a/net/netfilter/nfnetlink_cttimeout.c
+++ b/net/netfilter/nfnetlink_cttimeout.c
@@ -586,7 +586,6 @@ static void __net_exit cttimeout_net_exit(struct net *net)
586static struct pernet_operations cttimeout_ops = { 586static struct pernet_operations cttimeout_ops = {
587 .init = cttimeout_net_init, 587 .init = cttimeout_net_init,
588 .exit = cttimeout_net_exit, 588 .exit = cttimeout_net_exit,
589 .async = true,
590}; 589};
591 590
592static int __init cttimeout_init(void) 591static int __init cttimeout_init(void)
diff --git a/net/netfilter/nfnetlink_log.c b/net/netfilter/nfnetlink_log.c
index b21ef79849a1..7b46aa4c478d 100644
--- a/net/netfilter/nfnetlink_log.c
+++ b/net/netfilter/nfnetlink_log.c
@@ -1108,7 +1108,6 @@ static struct pernet_operations nfnl_log_net_ops = {
1108 .exit = nfnl_log_net_exit, 1108 .exit = nfnl_log_net_exit,
1109 .id = &nfnl_log_net_id, 1109 .id = &nfnl_log_net_id,
1110 .size = sizeof(struct nfnl_log_net), 1110 .size = sizeof(struct nfnl_log_net),
1111 .async = true,
1112}; 1111};
1113 1112
1114static int __init nfnetlink_log_init(void) 1113static int __init nfnetlink_log_init(void)
diff --git a/net/netfilter/nfnetlink_queue.c b/net/netfilter/nfnetlink_queue.c
index 9f572ed56208..0b839c38800f 100644
--- a/net/netfilter/nfnetlink_queue.c
+++ b/net/netfilter/nfnetlink_queue.c
@@ -1525,7 +1525,6 @@ static struct pernet_operations nfnl_queue_net_ops = {
1525 .exit_batch = nfnl_queue_net_exit_batch, 1525 .exit_batch = nfnl_queue_net_exit_batch,
1526 .id = &nfnl_queue_net_id, 1526 .id = &nfnl_queue_net_id,
1527 .size = sizeof(struct nfnl_queue_net), 1527 .size = sizeof(struct nfnl_queue_net),
1528 .async = true,
1529}; 1528};
1530 1529
1531static int __init nfnetlink_queue_init(void) 1530static int __init nfnetlink_queue_init(void)
diff --git a/net/netfilter/x_tables.c b/net/netfilter/x_tables.c
index 6de1f6a4cb80..4aa01c90e9d1 100644
--- a/net/netfilter/x_tables.c
+++ b/net/netfilter/x_tables.c
@@ -1789,7 +1789,6 @@ static void __net_exit xt_net_exit(struct net *net)
1789static struct pernet_operations xt_net_ops = { 1789static struct pernet_operations xt_net_ops = {
1790 .init = xt_net_init, 1790 .init = xt_net_init,
1791 .exit = xt_net_exit, 1791 .exit = xt_net_exit,
1792 .async = true,
1793}; 1792};
1794 1793
1795static int __init xt_init(void) 1794static int __init xt_init(void)
diff --git a/net/netfilter/xt_hashlimit.c b/net/netfilter/xt_hashlimit.c
index ef65b7a9173e..3360f13dc208 100644
--- a/net/netfilter/xt_hashlimit.c
+++ b/net/netfilter/xt_hashlimit.c
@@ -1349,7 +1349,6 @@ static struct pernet_operations hashlimit_net_ops = {
1349 .exit = hashlimit_net_exit, 1349 .exit = hashlimit_net_exit,
1350 .id = &hashlimit_net_id, 1350 .id = &hashlimit_net_id,
1351 .size = sizeof(struct hashlimit_net), 1351 .size = sizeof(struct hashlimit_net),
1352 .async = true,
1353}; 1352};
1354 1353
1355static int __init hashlimit_mt_init(void) 1354static int __init hashlimit_mt_init(void)
diff --git a/net/netfilter/xt_recent.c b/net/netfilter/xt_recent.c
index 434e35ce940b..9bbfc17ce3ec 100644
--- a/net/netfilter/xt_recent.c
+++ b/net/netfilter/xt_recent.c
@@ -687,7 +687,6 @@ static struct pernet_operations recent_net_ops = {
687 .exit = recent_net_exit, 687 .exit = recent_net_exit,
688 .id = &recent_net_id, 688 .id = &recent_net_id,
689 .size = sizeof(struct recent_net), 689 .size = sizeof(struct recent_net),
690 .async = true,
691}; 690};
692 691
693static struct xt_match recent_mt_reg[] __read_mostly = { 692static struct xt_match recent_mt_reg[] __read_mostly = {
diff --git a/net/netlink/af_netlink.c b/net/netlink/af_netlink.c
index 5d10dcfe6411..f1b02d87e336 100644
--- a/net/netlink/af_netlink.c
+++ b/net/netlink/af_netlink.c
@@ -253,7 +253,6 @@ static struct pernet_operations netlink_tap_net_ops = {
253 .exit = netlink_tap_exit_net, 253 .exit = netlink_tap_exit_net,
254 .id = &netlink_tap_net_id, 254 .id = &netlink_tap_net_id,
255 .size = sizeof(struct netlink_tap_net), 255 .size = sizeof(struct netlink_tap_net),
256 .async = true,
257}; 256};
258 257
259static bool netlink_filter_tap(const struct sk_buff *skb) 258static bool netlink_filter_tap(const struct sk_buff *skb)
@@ -2726,7 +2725,6 @@ static void __init netlink_add_usersock_entry(void)
2726static struct pernet_operations __net_initdata netlink_net_ops = { 2725static struct pernet_operations __net_initdata netlink_net_ops = {
2727 .init = netlink_net_init, 2726 .init = netlink_net_init,
2728 .exit = netlink_net_exit, 2727 .exit = netlink_net_exit,
2729 .async = true,
2730}; 2728};
2731 2729
2732static inline u32 netlink_hash(const void *data, u32 len, u32 seed) 2730static inline u32 netlink_hash(const void *data, u32 len, u32 seed)
diff --git a/net/netlink/genetlink.c b/net/netlink/genetlink.c
index af51b8c0a2cb..b9ce82c9440f 100644
--- a/net/netlink/genetlink.c
+++ b/net/netlink/genetlink.c
@@ -1035,7 +1035,6 @@ static void __net_exit genl_pernet_exit(struct net *net)
1035static struct pernet_operations genl_pernet_ops = { 1035static struct pernet_operations genl_pernet_ops = {
1036 .init = genl_pernet_init, 1036 .init = genl_pernet_init,
1037 .exit = genl_pernet_exit, 1037 .exit = genl_pernet_exit,
1038 .async = true,
1039}; 1038};
1040 1039
1041static int __init genl_init(void) 1040static int __init genl_init(void)
diff --git a/net/openvswitch/datapath.c b/net/openvswitch/datapath.c
index 100191df0371..ef38e5aecd28 100644
--- a/net/openvswitch/datapath.c
+++ b/net/openvswitch/datapath.c
@@ -2384,7 +2384,6 @@ static struct pernet_operations ovs_net_ops = {
2384 .exit = ovs_exit_net, 2384 .exit = ovs_exit_net,
2385 .id = &ovs_net_id, 2385 .id = &ovs_net_id,
2386 .size = sizeof(struct ovs_net), 2386 .size = sizeof(struct ovs_net),
2387 .async = true,
2388}; 2387};
2389 2388
2390static int __init dp_init(void) 2389static int __init dp_init(void)
diff --git a/net/packet/af_packet.c b/net/packet/af_packet.c
index 2c5a6fe5d749..616cb9c18f88 100644
--- a/net/packet/af_packet.c
+++ b/net/packet/af_packet.c
@@ -4557,7 +4557,6 @@ static void __net_exit packet_net_exit(struct net *net)
4557static struct pernet_operations packet_net_ops = { 4557static struct pernet_operations packet_net_ops = {
4558 .init = packet_net_init, 4558 .init = packet_net_init,
4559 .exit = packet_net_exit, 4559 .exit = packet_net_exit,
4560 .async = true,
4561}; 4560};
4562 4561
4563 4562
diff --git a/net/phonet/pn_dev.c b/net/phonet/pn_dev.c
index 9454e8393793..77787512fc32 100644
--- a/net/phonet/pn_dev.c
+++ b/net/phonet/pn_dev.c
@@ -342,7 +342,6 @@ static struct pernet_operations phonet_net_ops = {
342 .exit = phonet_exit_net, 342 .exit = phonet_exit_net,
343 .id = &phonet_net_id, 343 .id = &phonet_net_id,
344 .size = sizeof(struct phonet_net), 344 .size = sizeof(struct phonet_net),
345 .async = true,
346}; 345};
347 346
348/* Initialize Phonet devices list */ 347/* Initialize Phonet devices list */
diff --git a/net/rds/tcp.c b/net/rds/tcp.c
index 4f3a32c38bf5..351a28474667 100644
--- a/net/rds/tcp.c
+++ b/net/rds/tcp.c
@@ -530,7 +530,6 @@ static struct pernet_operations rds_tcp_net_ops = {
530 .exit = rds_tcp_exit_net, 530 .exit = rds_tcp_exit_net,
531 .id = &rds_tcp_netid, 531 .id = &rds_tcp_netid,
532 .size = sizeof(struct rds_tcp_net), 532 .size = sizeof(struct rds_tcp_net),
533 .async = true,
534}; 533};
535 534
536void *rds_tcp_listen_sock_def_readable(struct net *net) 535void *rds_tcp_listen_sock_def_readable(struct net *net)
diff --git a/net/rxrpc/net_ns.c b/net/rxrpc/net_ns.c
index 5fd939dabf41..f18c9248e0d4 100644
--- a/net/rxrpc/net_ns.c
+++ b/net/rxrpc/net_ns.c
@@ -106,5 +106,4 @@ struct pernet_operations rxrpc_net_ops = {
106 .exit = rxrpc_exit_net, 106 .exit = rxrpc_exit_net,
107 .id = &rxrpc_net_id, 107 .id = &rxrpc_net_id,
108 .size = sizeof(struct rxrpc_net), 108 .size = sizeof(struct rxrpc_net),
109 .async = true,
110}; 109};
diff --git a/net/sched/act_api.c b/net/sched/act_api.c
index 7bd1b964f021..0d78b58e1898 100644
--- a/net/sched/act_api.c
+++ b/net/sched/act_api.c
@@ -1533,7 +1533,6 @@ static struct pernet_operations tcf_action_net_ops = {
1533 .exit = tcf_action_net_exit, 1533 .exit = tcf_action_net_exit,
1534 .id = &tcf_action_net_id, 1534 .id = &tcf_action_net_id,
1535 .size = sizeof(struct tcf_action_net), 1535 .size = sizeof(struct tcf_action_net),
1536 .async = true,
1537}; 1536};
1538 1537
1539static int __init tc_action_init(void) 1538static int __init tc_action_init(void)
diff --git a/net/sched/act_bpf.c b/net/sched/act_bpf.c
index 5cb9b268e8ff..9092531d45d8 100644
--- a/net/sched/act_bpf.c
+++ b/net/sched/act_bpf.c
@@ -413,7 +413,6 @@ static struct pernet_operations bpf_net_ops = {
413 .exit_batch = bpf_exit_net, 413 .exit_batch = bpf_exit_net,
414 .id = &bpf_net_id, 414 .id = &bpf_net_id,
415 .size = sizeof(struct tc_action_net), 415 .size = sizeof(struct tc_action_net),
416 .async = true,
417}; 416};
418 417
419static int __init bpf_init_module(void) 418static int __init bpf_init_module(void)
diff --git a/net/sched/act_connmark.c b/net/sched/act_connmark.c
index 371e5e4ab3e2..e4b880fa51fe 100644
--- a/net/sched/act_connmark.c
+++ b/net/sched/act_connmark.c
@@ -222,7 +222,6 @@ static struct pernet_operations connmark_net_ops = {
222 .exit_batch = connmark_exit_net, 222 .exit_batch = connmark_exit_net,
223 .id = &connmark_net_id, 223 .id = &connmark_net_id,
224 .size = sizeof(struct tc_action_net), 224 .size = sizeof(struct tc_action_net),
225 .async = true,
226}; 225};
227 226
228static int __init connmark_init_module(void) 227static int __init connmark_init_module(void)
diff --git a/net/sched/act_csum.c b/net/sched/act_csum.c
index a527e287c086..7e28b2ce1437 100644
--- a/net/sched/act_csum.c
+++ b/net/sched/act_csum.c
@@ -678,7 +678,6 @@ static struct pernet_operations csum_net_ops = {
678 .exit_batch = csum_exit_net, 678 .exit_batch = csum_exit_net,
679 .id = &csum_net_id, 679 .id = &csum_net_id,
680 .size = sizeof(struct tc_action_net), 680 .size = sizeof(struct tc_action_net),
681 .async = true,
682}; 681};
683 682
684MODULE_DESCRIPTION("Checksum updating actions"); 683MODULE_DESCRIPTION("Checksum updating actions");
diff --git a/net/sched/act_gact.c b/net/sched/act_gact.c
index 88fbb8403565..4dc4f153cad8 100644
--- a/net/sched/act_gact.c
+++ b/net/sched/act_gact.c
@@ -261,7 +261,6 @@ static struct pernet_operations gact_net_ops = {
261 .exit_batch = gact_exit_net, 261 .exit_batch = gact_exit_net,
262 .id = &gact_net_id, 262 .id = &gact_net_id,
263 .size = sizeof(struct tc_action_net), 263 .size = sizeof(struct tc_action_net),
264 .async = true,
265}; 264};
266 265
267MODULE_AUTHOR("Jamal Hadi Salim(2002-4)"); 266MODULE_AUTHOR("Jamal Hadi Salim(2002-4)");
diff --git a/net/sched/act_ife.c b/net/sched/act_ife.c
index 555b1caeff72..a5994cf0512b 100644
--- a/net/sched/act_ife.c
+++ b/net/sched/act_ife.c
@@ -870,7 +870,6 @@ static struct pernet_operations ife_net_ops = {
870 .exit_batch = ife_exit_net, 870 .exit_batch = ife_exit_net,
871 .id = &ife_net_id, 871 .id = &ife_net_id,
872 .size = sizeof(struct tc_action_net), 872 .size = sizeof(struct tc_action_net),
873 .async = true,
874}; 873};
875 874
876static int __init ife_init_module(void) 875static int __init ife_init_module(void)
diff --git a/net/sched/act_ipt.c b/net/sched/act_ipt.c
index b5e8565b89c7..14c312d7908f 100644
--- a/net/sched/act_ipt.c
+++ b/net/sched/act_ipt.c
@@ -352,7 +352,6 @@ static struct pernet_operations ipt_net_ops = {
352 .exit_batch = ipt_exit_net, 352 .exit_batch = ipt_exit_net,
353 .id = &ipt_net_id, 353 .id = &ipt_net_id,
354 .size = sizeof(struct tc_action_net), 354 .size = sizeof(struct tc_action_net),
355 .async = true,
356}; 355};
357 356
358static int tcf_xt_walker(struct net *net, struct sk_buff *skb, 357static int tcf_xt_walker(struct net *net, struct sk_buff *skb,
@@ -403,7 +402,6 @@ static struct pernet_operations xt_net_ops = {
403 .exit_batch = xt_exit_net, 402 .exit_batch = xt_exit_net,
404 .id = &xt_net_id, 403 .id = &xt_net_id,
405 .size = sizeof(struct tc_action_net), 404 .size = sizeof(struct tc_action_net),
406 .async = true,
407}; 405};
408 406
409MODULE_AUTHOR("Jamal Hadi Salim(2002-13)"); 407MODULE_AUTHOR("Jamal Hadi Salim(2002-13)");
diff --git a/net/sched/act_mirred.c b/net/sched/act_mirred.c
index 64c86579c3d9..fd34015331ab 100644
--- a/net/sched/act_mirred.c
+++ b/net/sched/act_mirred.c
@@ -353,7 +353,6 @@ static struct pernet_operations mirred_net_ops = {
353 .exit_batch = mirred_exit_net, 353 .exit_batch = mirred_exit_net,
354 .id = &mirred_net_id, 354 .id = &mirred_net_id,
355 .size = sizeof(struct tc_action_net), 355 .size = sizeof(struct tc_action_net),
356 .async = true,
357}; 356};
358 357
359MODULE_AUTHOR("Jamal Hadi Salim(2002)"); 358MODULE_AUTHOR("Jamal Hadi Salim(2002)");
diff --git a/net/sched/act_nat.c b/net/sched/act_nat.c
index b1bc757f6491..4b5848b6c252 100644
--- a/net/sched/act_nat.c
+++ b/net/sched/act_nat.c
@@ -323,7 +323,6 @@ static struct pernet_operations nat_net_ops = {
323 .exit_batch = nat_exit_net, 323 .exit_batch = nat_exit_net,
324 .id = &nat_net_id, 324 .id = &nat_net_id,
325 .size = sizeof(struct tc_action_net), 325 .size = sizeof(struct tc_action_net),
326 .async = true,
327}; 326};
328 327
329MODULE_DESCRIPTION("Stateless NAT actions"); 328MODULE_DESCRIPTION("Stateless NAT actions");
diff --git a/net/sched/act_pedit.c b/net/sched/act_pedit.c
index f392ccaaa0d8..8a925c72db5f 100644
--- a/net/sched/act_pedit.c
+++ b/net/sched/act_pedit.c
@@ -465,7 +465,6 @@ static struct pernet_operations pedit_net_ops = {
465 .exit_batch = pedit_exit_net, 465 .exit_batch = pedit_exit_net,
466 .id = &pedit_net_id, 466 .id = &pedit_net_id,
467 .size = sizeof(struct tc_action_net), 467 .size = sizeof(struct tc_action_net),
468 .async = true,
469}; 468};
470 469
471MODULE_AUTHOR("Jamal Hadi Salim(2002-4)"); 470MODULE_AUTHOR("Jamal Hadi Salim(2002-4)");
diff --git a/net/sched/act_police.c b/net/sched/act_police.c
index 7081ec75e696..4e72bc2a0dfb 100644
--- a/net/sched/act_police.c
+++ b/net/sched/act_police.c
@@ -347,7 +347,6 @@ static struct pernet_operations police_net_ops = {
347 .exit_batch = police_exit_net, 347 .exit_batch = police_exit_net,
348 .id = &police_net_id, 348 .id = &police_net_id,
349 .size = sizeof(struct tc_action_net), 349 .size = sizeof(struct tc_action_net),
350 .async = true,
351}; 350};
352 351
353static int __init police_init_module(void) 352static int __init police_init_module(void)
diff --git a/net/sched/act_sample.c b/net/sched/act_sample.c
index 3a89f98f17e6..5db358497c9e 100644
--- a/net/sched/act_sample.c
+++ b/net/sched/act_sample.c
@@ -249,7 +249,6 @@ static struct pernet_operations sample_net_ops = {
249 .exit_batch = sample_exit_net, 249 .exit_batch = sample_exit_net,
250 .id = &sample_net_id, 250 .id = &sample_net_id,
251 .size = sizeof(struct tc_action_net), 251 .size = sizeof(struct tc_action_net),
252 .async = true,
253}; 252};
254 253
255static int __init sample_init_module(void) 254static int __init sample_init_module(void)
diff --git a/net/sched/act_simple.c b/net/sched/act_simple.c
index e84768ae610a..9618b4a83cee 100644
--- a/net/sched/act_simple.c
+++ b/net/sched/act_simple.c
@@ -216,7 +216,6 @@ static struct pernet_operations simp_net_ops = {
216 .exit_batch = simp_exit_net, 216 .exit_batch = simp_exit_net,
217 .id = &simp_net_id, 217 .id = &simp_net_id,
218 .size = sizeof(struct tc_action_net), 218 .size = sizeof(struct tc_action_net),
219 .async = true,
220}; 219};
221 220
222MODULE_AUTHOR("Jamal Hadi Salim(2005)"); 221MODULE_AUTHOR("Jamal Hadi Salim(2005)");
diff --git a/net/sched/act_skbedit.c b/net/sched/act_skbedit.c
index 7971510fe61b..ddf69fc01bdf 100644
--- a/net/sched/act_skbedit.c
+++ b/net/sched/act_skbedit.c
@@ -253,7 +253,6 @@ static struct pernet_operations skbedit_net_ops = {
253 .exit_batch = skbedit_exit_net, 253 .exit_batch = skbedit_exit_net,
254 .id = &skbedit_net_id, 254 .id = &skbedit_net_id,
255 .size = sizeof(struct tc_action_net), 255 .size = sizeof(struct tc_action_net),
256 .async = true,
257}; 256};
258 257
259MODULE_AUTHOR("Alexander Duyck, <alexander.h.duyck@intel.com>"); 258MODULE_AUTHOR("Alexander Duyck, <alexander.h.duyck@intel.com>");
diff --git a/net/sched/act_skbmod.c b/net/sched/act_skbmod.c
index 142a996ac776..bbcbdce732cc 100644
--- a/net/sched/act_skbmod.c
+++ b/net/sched/act_skbmod.c
@@ -279,7 +279,6 @@ static struct pernet_operations skbmod_net_ops = {
279 .exit_batch = skbmod_exit_net, 279 .exit_batch = skbmod_exit_net,
280 .id = &skbmod_net_id, 280 .id = &skbmod_net_id,
281 .size = sizeof(struct tc_action_net), 281 .size = sizeof(struct tc_action_net),
282 .async = true,
283}; 282};
284 283
285MODULE_AUTHOR("Jamal Hadi Salim, <jhs@mojatatu.com>"); 284MODULE_AUTHOR("Jamal Hadi Salim, <jhs@mojatatu.com>");
diff --git a/net/sched/act_tunnel_key.c b/net/sched/act_tunnel_key.c
index a1c8dd406a04..626dac81a48a 100644
--- a/net/sched/act_tunnel_key.c
+++ b/net/sched/act_tunnel_key.c
@@ -339,7 +339,6 @@ static struct pernet_operations tunnel_key_net_ops = {
339 .exit_batch = tunnel_key_exit_net, 339 .exit_batch = tunnel_key_exit_net,
340 .id = &tunnel_key_net_id, 340 .id = &tunnel_key_net_id,
341 .size = sizeof(struct tc_action_net), 341 .size = sizeof(struct tc_action_net),
342 .async = true,
343}; 342};
344 343
345static int __init tunnel_key_init_module(void) 344static int __init tunnel_key_init_module(void)
diff --git a/net/sched/act_vlan.c b/net/sched/act_vlan.c
index 41a66effeb5f..853604685965 100644
--- a/net/sched/act_vlan.c
+++ b/net/sched/act_vlan.c
@@ -314,7 +314,6 @@ static struct pernet_operations vlan_net_ops = {
314 .exit_batch = vlan_exit_net, 314 .exit_batch = vlan_exit_net,
315 .id = &vlan_net_id, 315 .id = &vlan_net_id,
316 .size = sizeof(struct tc_action_net), 316 .size = sizeof(struct tc_action_net),
317 .async = true,
318}; 317};
319 318
320static int __init vlan_init_module(void) 319static int __init vlan_init_module(void)
diff --git a/net/sched/cls_api.c b/net/sched/cls_api.c
index ec5fe8ec0c3e..b66754f52a9f 100644
--- a/net/sched/cls_api.c
+++ b/net/sched/cls_api.c
@@ -1619,7 +1619,6 @@ static struct pernet_operations tcf_net_ops = {
1619 .exit = tcf_net_exit, 1619 .exit = tcf_net_exit,
1620 .id = &tcf_net_id, 1620 .id = &tcf_net_id,
1621 .size = sizeof(struct tcf_net), 1621 .size = sizeof(struct tcf_net),
1622 .async = true,
1623}; 1622};
1624 1623
1625static int __init tc_filter_init(void) 1624static int __init tc_filter_init(void)
diff --git a/net/sched/sch_api.c b/net/sched/sch_api.c
index 68f9d942bed4..106dae7e4818 100644
--- a/net/sched/sch_api.c
+++ b/net/sched/sch_api.c
@@ -2133,7 +2133,6 @@ static void __net_exit psched_net_exit(struct net *net)
2133static struct pernet_operations psched_net_ops = { 2133static struct pernet_operations psched_net_ops = {
2134 .init = psched_net_init, 2134 .init = psched_net_init,
2135 .exit = psched_net_exit, 2135 .exit = psched_net_exit,
2136 .async = true,
2137}; 2136};
2138 2137
2139static int __init pktsched_init(void) 2138static int __init pktsched_init(void)
diff --git a/net/sctp/protocol.c b/net/sctp/protocol.c
index 493b817f6a2a..84a09f599131 100644
--- a/net/sctp/protocol.c
+++ b/net/sctp/protocol.c
@@ -1283,7 +1283,6 @@ static void __net_exit sctp_defaults_exit(struct net *net)
1283static struct pernet_operations sctp_defaults_ops = { 1283static struct pernet_operations sctp_defaults_ops = {
1284 .init = sctp_defaults_init, 1284 .init = sctp_defaults_init,
1285 .exit = sctp_defaults_exit, 1285 .exit = sctp_defaults_exit,
1286 .async = true,
1287}; 1286};
1288 1287
1289static int __net_init sctp_ctrlsock_init(struct net *net) 1288static int __net_init sctp_ctrlsock_init(struct net *net)
@@ -1307,7 +1306,6 @@ static void __net_init sctp_ctrlsock_exit(struct net *net)
1307static struct pernet_operations sctp_ctrlsock_ops = { 1306static struct pernet_operations sctp_ctrlsock_ops = {
1308 .init = sctp_ctrlsock_init, 1307 .init = sctp_ctrlsock_init,
1309 .exit = sctp_ctrlsock_exit, 1308 .exit = sctp_ctrlsock_exit,
1310 .async = true,
1311}; 1309};
1312 1310
1313/* Initialize the universe into something sensible. */ 1311/* Initialize the universe into something sensible. */
diff --git a/net/sunrpc/auth_gss/auth_gss.c b/net/sunrpc/auth_gss/auth_gss.c
index 44f939cb6bc8..9463af4b32e8 100644
--- a/net/sunrpc/auth_gss/auth_gss.c
+++ b/net/sunrpc/auth_gss/auth_gss.c
@@ -2063,7 +2063,6 @@ static __net_exit void rpcsec_gss_exit_net(struct net *net)
2063static struct pernet_operations rpcsec_gss_net_ops = { 2063static struct pernet_operations rpcsec_gss_net_ops = {
2064 .init = rpcsec_gss_init_net, 2064 .init = rpcsec_gss_init_net,
2065 .exit = rpcsec_gss_exit_net, 2065 .exit = rpcsec_gss_exit_net,
2066 .async = true,
2067}; 2066};
2068 2067
2069/* 2068/*
diff --git a/net/sunrpc/sunrpc_syms.c b/net/sunrpc/sunrpc_syms.c
index 68287e921847..56f9eff74150 100644
--- a/net/sunrpc/sunrpc_syms.c
+++ b/net/sunrpc/sunrpc_syms.c
@@ -79,7 +79,6 @@ static struct pernet_operations sunrpc_net_ops = {
79 .exit = sunrpc_exit_net, 79 .exit = sunrpc_exit_net,
80 .id = &sunrpc_net_id, 80 .id = &sunrpc_net_id,
81 .size = sizeof(struct sunrpc_net), 81 .size = sizeof(struct sunrpc_net),
82 .async = true,
83}; 82};
84 83
85static int __init 84static int __init
diff --git a/net/sysctl_net.c b/net/sysctl_net.c
index f424539829b7..9aed6fe1bf1a 100644
--- a/net/sysctl_net.c
+++ b/net/sysctl_net.c
@@ -89,7 +89,6 @@ static void __net_exit sysctl_net_exit(struct net *net)
89static struct pernet_operations sysctl_pernet_ops = { 89static struct pernet_operations sysctl_pernet_ops = {
90 .init = sysctl_net_init, 90 .init = sysctl_net_init,
91 .exit = sysctl_net_exit, 91 .exit = sysctl_net_exit,
92 .async = true,
93}; 92};
94 93
95static struct ctl_table_header *net_header; 94static struct ctl_table_header *net_header;
diff --git a/net/tipc/core.c b/net/tipc/core.c
index 52dfc51ac4d5..5b38f5164281 100644
--- a/net/tipc/core.c
+++ b/net/tipc/core.c
@@ -109,7 +109,6 @@ static struct pernet_operations tipc_net_ops = {
109 .exit = tipc_exit_net, 109 .exit = tipc_exit_net,
110 .id = &tipc_net_id, 110 .id = &tipc_net_id,
111 .size = sizeof(struct tipc_net), 111 .size = sizeof(struct tipc_net),
112 .async = true,
113}; 112};
114 113
115static int __init tipc_init(void) 114static int __init tipc_init(void)
diff --git a/net/unix/af_unix.c b/net/unix/af_unix.c
index bc2970a8e7f3..aded82da1aea 100644
--- a/net/unix/af_unix.c
+++ b/net/unix/af_unix.c
@@ -2913,7 +2913,6 @@ static void __net_exit unix_net_exit(struct net *net)
2913static struct pernet_operations unix_net_ops = { 2913static struct pernet_operations unix_net_ops = {
2914 .init = unix_net_init, 2914 .init = unix_net_init,
2915 .exit = unix_net_exit, 2915 .exit = unix_net_exit,
2916 .async = true,
2917}; 2916};
2918 2917
2919static int __init af_unix_init(void) 2918static int __init af_unix_init(void)
diff --git a/net/wireless/core.c b/net/wireless/core.c
index 670aa229168a..a6f3cac8c640 100644
--- a/net/wireless/core.c
+++ b/net/wireless/core.c
@@ -1340,7 +1340,6 @@ static void __net_exit cfg80211_pernet_exit(struct net *net)
1340 1340
1341static struct pernet_operations cfg80211_pernet_ops = { 1341static struct pernet_operations cfg80211_pernet_ops = {
1342 .exit = cfg80211_pernet_exit, 1342 .exit = cfg80211_pernet_exit,
1343 .async = true,
1344}; 1343};
1345 1344
1346static int __init cfg80211_init(void) 1345static int __init cfg80211_init(void)
diff --git a/net/wireless/wext-core.c b/net/wireless/wext-core.c
index bc7064486b15..9efbfc753347 100644
--- a/net/wireless/wext-core.c
+++ b/net/wireless/wext-core.c
@@ -390,7 +390,6 @@ static void __net_exit wext_pernet_exit(struct net *net)
390static struct pernet_operations wext_pernet_ops = { 390static struct pernet_operations wext_pernet_ops = {
391 .init = wext_pernet_init, 391 .init = wext_pernet_init,
392 .exit = wext_pernet_exit, 392 .exit = wext_pernet_exit,
393 .async = true,
394}; 393};
395 394
396static int __init wireless_nlevent_init(void) 395static int __init wireless_nlevent_init(void)
diff --git a/net/xfrm/xfrm_policy.c b/net/xfrm/xfrm_policy.c
index cb3bb9ae4407..625b3fca5704 100644
--- a/net/xfrm/xfrm_policy.c
+++ b/net/xfrm/xfrm_policy.c
@@ -2985,7 +2985,6 @@ static void __net_exit xfrm_net_exit(struct net *net)
2985static struct pernet_operations __net_initdata xfrm_net_ops = { 2985static struct pernet_operations __net_initdata xfrm_net_ops = {
2986 .init = xfrm_net_init, 2986 .init = xfrm_net_init,
2987 .exit = xfrm_net_exit, 2987 .exit = xfrm_net_exit,
2988 .async = true,
2989}; 2988};
2990 2989
2991void __init xfrm_init(void) 2990void __init xfrm_init(void)
diff --git a/net/xfrm/xfrm_user.c b/net/xfrm/xfrm_user.c
index e92b8c019c88..080035f056d9 100644
--- a/net/xfrm/xfrm_user.c
+++ b/net/xfrm/xfrm_user.c
@@ -3253,7 +3253,6 @@ static void __net_exit xfrm_user_net_exit(struct list_head *net_exit_list)
3253static struct pernet_operations xfrm_user_net_ops = { 3253static struct pernet_operations xfrm_user_net_ops = {
3254 .init = xfrm_user_net_init, 3254 .init = xfrm_user_net_init,
3255 .exit_batch = xfrm_user_net_exit, 3255 .exit_batch = xfrm_user_net_exit,
3256 .async = true,
3257}; 3256};
3258 3257
3259static int __init xfrm_user_init(void) 3258static int __init xfrm_user_init(void)
diff --git a/security/selinux/hooks.c b/security/selinux/hooks.c
index b4d7b6242a40..8644d864e3c1 100644
--- a/security/selinux/hooks.c
+++ b/security/selinux/hooks.c
@@ -6743,7 +6743,6 @@ static void __net_exit selinux_nf_unregister(struct net *net)
6743static struct pernet_operations selinux_net_ops = { 6743static struct pernet_operations selinux_net_ops = {
6744 .init = selinux_nf_register, 6744 .init = selinux_nf_register,
6745 .exit = selinux_nf_unregister, 6745 .exit = selinux_nf_unregister,
6746 .async = true,
6747}; 6746};
6748 6747
6749static int __init selinux_nf_ip_init(void) 6748static int __init selinux_nf_ip_init(void)
diff --git a/security/smack/smack_netfilter.c b/security/smack/smack_netfilter.c
index 3f29c03162ca..e36d17835d4f 100644
--- a/security/smack/smack_netfilter.c
+++ b/security/smack/smack_netfilter.c
@@ -89,7 +89,6 @@ static void __net_exit smack_nf_unregister(struct net *net)
89static struct pernet_operations smack_net_ops = { 89static struct pernet_operations smack_net_ops = {
90 .init = smack_nf_register, 90 .init = smack_nf_register,
91 .exit = smack_nf_unregister, 91 .exit = smack_nf_unregister,
92 .async = true,
93}; 92};
94 93
95static int __init smack_nf_ip_init(void) 94static int __init smack_nf_ip_init(void)