Commit a9b3cd7f323b2e57593e7215362a7b02fc933e3a
Committed by
David S. Miller
1 parent
76f793e3a4
Exists in
master
and in
38 other branches
rcu: convert uses of rcu_assign_pointer(x, NULL) to RCU_INIT_POINTER
When assigning a NULL value to an RCU protected pointer, no barrier is needed. The rcu_assign_pointer, used to handle that but will soon change to not handle the special case. Convert all rcu_assign_pointer of NULL value. //smpl @@ expression P; @@ - rcu_assign_pointer(P, NULL) + RCU_INIT_POINTER(P, NULL) // </smpl> Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Acked-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Showing 55 changed files with 193 additions and 193 deletions Side-by-side Diff
- net/802/garp.c
- net/802/stp.c
- net/8021q/vlan.c
- net/bridge/netfilter/ebtable_broute.c
- net/caif/cfmuxl.c
- net/can/af_can.c
- net/core/dev.c
- net/core/fib_rules.c
- net/core/filter.c
- net/core/net-sysfs.c
- net/core/netpoll.c
- net/core/sock.c
- net/decnet/dn_dev.c
- net/ipv4/devinet.c
- net/ipv4/fib_trie.c
- net/ipv4/gre.c
- net/ipv4/igmp.c
- net/ipv4/ipip.c
- net/ipv4/ipmr.c
- net/ipv4/netfilter/nf_nat_amanda.c
- net/ipv4/netfilter/nf_nat_core.c
- net/ipv4/netfilter/nf_nat_ftp.c
- net/ipv4/netfilter/nf_nat_h323.c
- net/ipv4/netfilter/nf_nat_irc.c
- net/ipv4/netfilter/nf_nat_pptp.c
- net/ipv4/netfilter/nf_nat_sip.c
- net/ipv4/netfilter/nf_nat_snmp_basic.c
- net/ipv4/netfilter/nf_nat_standalone.c
- net/ipv4/netfilter/nf_nat_tftp.c
- net/ipv6/addrconf.c
- net/ipv6/ip6_tunnel.c
- net/ipv6/raw.c
- net/ipv6/sit.c
- net/mac80211/agg-rx.c
- net/mac80211/cfg.c
- net/mac80211/ibss.c
- net/mac80211/iface.c
- net/mac80211/sta_info.c
- net/netfilter/core.c
- net/netfilter/nf_conntrack_core.c
- net/netfilter/nf_conntrack_ecache.c
- net/netfilter/nf_conntrack_extend.c
- net/netfilter/nf_conntrack_helper.c
- net/netfilter/nf_conntrack_netlink.c
- net/netfilter/nf_log.c
- net/netfilter/nf_queue.c
- net/netfilter/nfnetlink.c
- net/netlabel/netlabel_domainhash.c
- net/netlabel/netlabel_unlabeled.c
- net/phonet/af_phonet.c
- net/phonet/pn_dev.c
- net/phonet/socket.c
- net/socket.c
- net/sunrpc/auth_gss/auth_gss.c
- net/xfrm/xfrm_user.c
net/802/garp.c
... | ... | @@ -553,7 +553,7 @@ |
553 | 553 | if (rtnl_dereference(port->applicants[i])) |
554 | 554 | return; |
555 | 555 | } |
556 | - rcu_assign_pointer(dev->garp_port, NULL); | |
556 | + RCU_INIT_POINTER(dev->garp_port, NULL); | |
557 | 557 | kfree_rcu(port, rcu); |
558 | 558 | } |
559 | 559 | |
... | ... | @@ -605,7 +605,7 @@ |
605 | 605 | |
606 | 606 | ASSERT_RTNL(); |
607 | 607 | |
608 | - rcu_assign_pointer(port->applicants[appl->type], NULL); | |
608 | + RCU_INIT_POINTER(port->applicants[appl->type], NULL); | |
609 | 609 | |
610 | 610 | /* Delete timer and generate a final TRANSMIT_PDU event to flush out |
611 | 611 | * all pending messages before the applicant is gone. */ |
net/802/stp.c
... | ... | @@ -88,9 +88,9 @@ |
88 | 88 | { |
89 | 89 | mutex_lock(&stp_proto_mutex); |
90 | 90 | if (is_zero_ether_addr(proto->group_address)) |
91 | - rcu_assign_pointer(stp_proto, NULL); | |
91 | + RCU_INIT_POINTER(stp_proto, NULL); | |
92 | 92 | else |
93 | - rcu_assign_pointer(garp_protos[proto->group_address[5] - | |
93 | + RCU_INIT_POINTER(garp_protos[proto->group_address[5] - | |
94 | 94 | GARP_ADDR_MIN], NULL); |
95 | 95 | synchronize_rcu(); |
96 | 96 |
net/8021q/vlan.c
... | ... | @@ -133,7 +133,7 @@ |
133 | 133 | if (grp->nr_vlans == 0) { |
134 | 134 | vlan_gvrp_uninit_applicant(real_dev); |
135 | 135 | |
136 | - rcu_assign_pointer(real_dev->vlgrp, NULL); | |
136 | + RCU_INIT_POINTER(real_dev->vlgrp, NULL); | |
137 | 137 | |
138 | 138 | /* Free the group, after all cpu's are done. */ |
139 | 139 | call_rcu(&grp->rcu, vlan_rcu_free); |
net/bridge/netfilter/ebtable_broute.c
... | ... | @@ -87,14 +87,14 @@ |
87 | 87 | if (ret < 0) |
88 | 88 | return ret; |
89 | 89 | /* see br_input.c */ |
90 | - rcu_assign_pointer(br_should_route_hook, | |
90 | + RCU_INIT_POINTER(br_should_route_hook, | |
91 | 91 | (br_should_route_hook_t *)ebt_broute); |
92 | 92 | return 0; |
93 | 93 | } |
94 | 94 | |
95 | 95 | static void __exit ebtable_broute_fini(void) |
96 | 96 | { |
97 | - rcu_assign_pointer(br_should_route_hook, NULL); | |
97 | + RCU_INIT_POINTER(br_should_route_hook, NULL); | |
98 | 98 | synchronize_net(); |
99 | 99 | unregister_pernet_subsys(&broute_net_ops); |
100 | 100 | } |
net/caif/cfmuxl.c
... | ... | @@ -108,7 +108,7 @@ |
108 | 108 | int idx = phyid % DN_CACHE_SIZE; |
109 | 109 | |
110 | 110 | spin_lock_bh(&muxl->transmit_lock); |
111 | - rcu_assign_pointer(muxl->dn_cache[idx], NULL); | |
111 | + RCU_INIT_POINTER(muxl->dn_cache[idx], NULL); | |
112 | 112 | dn = get_from_id(&muxl->frml_list, phyid); |
113 | 113 | if (dn == NULL) |
114 | 114 | goto out; |
... | ... | @@ -164,7 +164,7 @@ |
164 | 164 | if (up == NULL) |
165 | 165 | goto out; |
166 | 166 | |
167 | - rcu_assign_pointer(muxl->up_cache[idx], NULL); | |
167 | + RCU_INIT_POINTER(muxl->up_cache[idx], NULL); | |
168 | 168 | list_del_rcu(&up->node); |
169 | 169 | out: |
170 | 170 | spin_unlock_bh(&muxl->receive_lock); |
... | ... | @@ -261,7 +261,7 @@ |
261 | 261 | |
262 | 262 | idx = layer->id % UP_CACHE_SIZE; |
263 | 263 | spin_lock_bh(&muxl->receive_lock); |
264 | - rcu_assign_pointer(muxl->up_cache[idx], NULL); | |
264 | + RCU_INIT_POINTER(muxl->up_cache[idx], NULL); | |
265 | 265 | list_del_rcu(&layer->node); |
266 | 266 | spin_unlock_bh(&muxl->receive_lock); |
267 | 267 | } |
net/can/af_can.c
... | ... | @@ -719,7 +719,7 @@ |
719 | 719 | proto); |
720 | 720 | err = -EBUSY; |
721 | 721 | } else |
722 | - rcu_assign_pointer(proto_tab[proto], cp); | |
722 | + RCU_INIT_POINTER(proto_tab[proto], cp); | |
723 | 723 | |
724 | 724 | mutex_unlock(&proto_tab_lock); |
725 | 725 | |
... | ... | @@ -740,7 +740,7 @@ |
740 | 740 | |
741 | 741 | mutex_lock(&proto_tab_lock); |
742 | 742 | BUG_ON(proto_tab[proto] != cp); |
743 | - rcu_assign_pointer(proto_tab[proto], NULL); | |
743 | + RCU_INIT_POINTER(proto_tab[proto], NULL); | |
744 | 744 | mutex_unlock(&proto_tab_lock); |
745 | 745 | |
746 | 746 | synchronize_rcu(); |
net/core/dev.c
... | ... | @@ -3094,8 +3094,8 @@ |
3094 | 3094 | { |
3095 | 3095 | |
3096 | 3096 | ASSERT_RTNL(); |
3097 | - rcu_assign_pointer(dev->rx_handler, NULL); | |
3098 | - rcu_assign_pointer(dev->rx_handler_data, NULL); | |
3097 | + RCU_INIT_POINTER(dev->rx_handler, NULL); | |
3098 | + RCU_INIT_POINTER(dev->rx_handler_data, NULL); | |
3099 | 3099 | } |
3100 | 3100 | EXPORT_SYMBOL_GPL(netdev_rx_handler_unregister); |
3101 | 3101 |
net/core/fib_rules.c
... | ... | @@ -487,7 +487,7 @@ |
487 | 487 | if (ops->nr_goto_rules > 0) { |
488 | 488 | list_for_each_entry(tmp, &ops->rules_list, list) { |
489 | 489 | if (rtnl_dereference(tmp->ctarget) == rule) { |
490 | - rcu_assign_pointer(tmp->ctarget, NULL); | |
490 | + RCU_INIT_POINTER(tmp->ctarget, NULL); | |
491 | 491 | ops->unresolved_rules++; |
492 | 492 | } |
493 | 493 | } |
net/core/filter.c
net/core/net-sysfs.c
... | ... | @@ -987,10 +987,10 @@ |
987 | 987 | } |
988 | 988 | |
989 | 989 | if (nonempty) |
990 | - rcu_assign_pointer(dev->xps_maps, new_dev_maps); | |
990 | + RCU_INIT_POINTER(dev->xps_maps, new_dev_maps); | |
991 | 991 | else { |
992 | 992 | kfree(new_dev_maps); |
993 | - rcu_assign_pointer(dev->xps_maps, NULL); | |
993 | + RCU_INIT_POINTER(dev->xps_maps, NULL); | |
994 | 994 | } |
995 | 995 | |
996 | 996 | if (dev_maps) |
net/core/netpoll.c
... | ... | @@ -760,7 +760,7 @@ |
760 | 760 | } |
761 | 761 | |
762 | 762 | /* last thing to do is link it to the net device structure */ |
763 | - rcu_assign_pointer(ndev->npinfo, npinfo); | |
763 | + RCU_INIT_POINTER(ndev->npinfo, npinfo); | |
764 | 764 | |
765 | 765 | return 0; |
766 | 766 | |
... | ... | @@ -901,7 +901,7 @@ |
901 | 901 | if (ops->ndo_netpoll_cleanup) |
902 | 902 | ops->ndo_netpoll_cleanup(np->dev); |
903 | 903 | |
904 | - rcu_assign_pointer(np->dev->npinfo, NULL); | |
904 | + RCU_INIT_POINTER(np->dev->npinfo, NULL); | |
905 | 905 | |
906 | 906 | /* avoid racing with NAPI reading npinfo */ |
907 | 907 | synchronize_rcu_bh(); |
net/core/sock.c
... | ... | @@ -387,7 +387,7 @@ |
387 | 387 | |
388 | 388 | if (dst && dst->obsolete && dst->ops->check(dst, cookie) == NULL) { |
389 | 389 | sk_tx_queue_clear(sk); |
390 | - rcu_assign_pointer(sk->sk_dst_cache, NULL); | |
390 | + RCU_INIT_POINTER(sk->sk_dst_cache, NULL); | |
391 | 391 | dst_release(dst); |
392 | 392 | return NULL; |
393 | 393 | } |
... | ... | @@ -1158,7 +1158,7 @@ |
1158 | 1158 | atomic_read(&sk->sk_wmem_alloc) == 0); |
1159 | 1159 | if (filter) { |
1160 | 1160 | sk_filter_uncharge(sk, filter); |
1161 | - rcu_assign_pointer(sk->sk_filter, NULL); | |
1161 | + RCU_INIT_POINTER(sk->sk_filter, NULL); | |
1162 | 1162 | } |
1163 | 1163 | |
1164 | 1164 | sock_disable_timestamp(sk, SOCK_TIMESTAMP); |
net/decnet/dn_dev.c
... | ... | @@ -388,7 +388,7 @@ |
388 | 388 | } |
389 | 389 | |
390 | 390 | ifa->ifa_next = dn_db->ifa_list; |
391 | - rcu_assign_pointer(dn_db->ifa_list, ifa); | |
391 | + RCU_INIT_POINTER(dn_db->ifa_list, ifa); | |
392 | 392 | |
393 | 393 | dn_ifaddr_notify(RTM_NEWADDR, ifa); |
394 | 394 | blocking_notifier_call_chain(&dnaddr_chain, NETDEV_UP, ifa); |
... | ... | @@ -1093,7 +1093,7 @@ |
1093 | 1093 | |
1094 | 1094 | memcpy(&dn_db->parms, p, sizeof(struct dn_dev_parms)); |
1095 | 1095 | |
1096 | - rcu_assign_pointer(dev->dn_ptr, dn_db); | |
1096 | + RCU_INIT_POINTER(dev->dn_ptr, dn_db); | |
1097 | 1097 | dn_db->dev = dev; |
1098 | 1098 | init_timer(&dn_db->timer); |
1099 | 1099 | |
... | ... | @@ -1101,7 +1101,7 @@ |
1101 | 1101 | |
1102 | 1102 | dn_db->neigh_parms = neigh_parms_alloc(dev, &dn_neigh_table); |
1103 | 1103 | if (!dn_db->neigh_parms) { |
1104 | - rcu_assign_pointer(dev->dn_ptr, NULL); | |
1104 | + RCU_INIT_POINTER(dev->dn_ptr, NULL); | |
1105 | 1105 | kfree(dn_db); |
1106 | 1106 | return NULL; |
1107 | 1107 | } |
net/ipv4/devinet.c
... | ... | @@ -258,7 +258,7 @@ |
258 | 258 | ip_mc_up(in_dev); |
259 | 259 | |
260 | 260 | /* we can receive as soon as ip_ptr is set -- do this last */ |
261 | - rcu_assign_pointer(dev->ip_ptr, in_dev); | |
261 | + RCU_INIT_POINTER(dev->ip_ptr, in_dev); | |
262 | 262 | out: |
263 | 263 | return in_dev; |
264 | 264 | out_kfree: |
... | ... | @@ -291,7 +291,7 @@ |
291 | 291 | inet_free_ifa(ifa); |
292 | 292 | } |
293 | 293 | |
294 | - rcu_assign_pointer(dev->ip_ptr, NULL); | |
294 | + RCU_INIT_POINTER(dev->ip_ptr, NULL); | |
295 | 295 | |
296 | 296 | devinet_sysctl_unregister(in_dev); |
297 | 297 | neigh_parms_release(&arp_tbl, in_dev->arp_parms); |
... | ... | @@ -1175,7 +1175,7 @@ |
1175 | 1175 | switch (event) { |
1176 | 1176 | case NETDEV_REGISTER: |
1177 | 1177 | printk(KERN_DEBUG "inetdev_event: bug\n"); |
1178 | - rcu_assign_pointer(dev->ip_ptr, NULL); | |
1178 | + RCU_INIT_POINTER(dev->ip_ptr, NULL); | |
1179 | 1179 | break; |
1180 | 1180 | case NETDEV_UP: |
1181 | 1181 | if (!inetdev_valid_mtu(dev->mtu)) |
net/ipv4/fib_trie.c
... | ... | @@ -204,7 +204,7 @@ |
204 | 204 | return (struct tnode *)(parent & ~NODE_TYPE_MASK); |
205 | 205 | } |
206 | 206 | |
207 | -/* Same as rcu_assign_pointer | |
207 | +/* Same as RCU_INIT_POINTER | |
208 | 208 | * but that macro() assumes that value is a pointer. |
209 | 209 | */ |
210 | 210 | static inline void node_set_parent(struct rt_trie_node *node, struct tnode *ptr) |
... | ... | @@ -528,7 +528,7 @@ |
528 | 528 | if (n) |
529 | 529 | node_set_parent(n, tn); |
530 | 530 | |
531 | - rcu_assign_pointer(tn->child[i], n); | |
531 | + RCU_INIT_POINTER(tn->child[i], n); | |
532 | 532 | } |
533 | 533 | |
534 | 534 | #define MAX_WORK 10 |
... | ... | @@ -1014,7 +1014,7 @@ |
1014 | 1014 | |
1015 | 1015 | tp = node_parent((struct rt_trie_node *) tn); |
1016 | 1016 | if (!tp) |
1017 | - rcu_assign_pointer(t->trie, (struct rt_trie_node *)tn); | |
1017 | + RCU_INIT_POINTER(t->trie, (struct rt_trie_node *)tn); | |
1018 | 1018 | |
1019 | 1019 | tnode_free_flush(); |
1020 | 1020 | if (!tp) |
... | ... | @@ -1026,7 +1026,7 @@ |
1026 | 1026 | if (IS_TNODE(tn)) |
1027 | 1027 | tn = (struct tnode *)resize(t, (struct tnode *)tn); |
1028 | 1028 | |
1029 | - rcu_assign_pointer(t->trie, (struct rt_trie_node *)tn); | |
1029 | + RCU_INIT_POINTER(t->trie, (struct rt_trie_node *)tn); | |
1030 | 1030 | tnode_free_flush(); |
1031 | 1031 | } |
1032 | 1032 | |
... | ... | @@ -1163,7 +1163,7 @@ |
1163 | 1163 | put_child(t, (struct tnode *)tp, cindex, |
1164 | 1164 | (struct rt_trie_node *)tn); |
1165 | 1165 | } else { |
1166 | - rcu_assign_pointer(t->trie, (struct rt_trie_node *)tn); | |
1166 | + RCU_INIT_POINTER(t->trie, (struct rt_trie_node *)tn); | |
1167 | 1167 | tp = tn; |
1168 | 1168 | } |
1169 | 1169 | } |
... | ... | @@ -1621,7 +1621,7 @@ |
1621 | 1621 | put_child(t, (struct tnode *)tp, cindex, NULL); |
1622 | 1622 | trie_rebalance(t, tp); |
1623 | 1623 | } else |
1624 | - rcu_assign_pointer(t->trie, NULL); | |
1624 | + RCU_INIT_POINTER(t->trie, NULL); | |
1625 | 1625 | |
1626 | 1626 | free_leaf(l); |
1627 | 1627 | } |
net/ipv4/gre.c
... | ... | @@ -34,7 +34,7 @@ |
34 | 34 | if (gre_proto[version]) |
35 | 35 | goto err_out_unlock; |
36 | 36 | |
37 | - rcu_assign_pointer(gre_proto[version], proto); | |
37 | + RCU_INIT_POINTER(gre_proto[version], proto); | |
38 | 38 | spin_unlock(&gre_proto_lock); |
39 | 39 | return 0; |
40 | 40 | |
... | ... | @@ -54,7 +54,7 @@ |
54 | 54 | if (rcu_dereference_protected(gre_proto[version], |
55 | 55 | lockdep_is_held(&gre_proto_lock)) != proto) |
56 | 56 | goto err_out_unlock; |
57 | - rcu_assign_pointer(gre_proto[version], NULL); | |
57 | + RCU_INIT_POINTER(gre_proto[version], NULL); | |
58 | 58 | spin_unlock(&gre_proto_lock); |
59 | 59 | synchronize_rcu(); |
60 | 60 | return 0; |
net/ipv4/igmp.c
... | ... | @@ -1242,7 +1242,7 @@ |
1242 | 1242 | |
1243 | 1243 | im->next_rcu = in_dev->mc_list; |
1244 | 1244 | in_dev->mc_count++; |
1245 | - rcu_assign_pointer(in_dev->mc_list, im); | |
1245 | + RCU_INIT_POINTER(in_dev->mc_list, im); | |
1246 | 1246 | |
1247 | 1247 | #ifdef CONFIG_IP_MULTICAST |
1248 | 1248 | igmpv3_del_delrec(in_dev, im->multiaddr); |
... | ... | @@ -1813,7 +1813,7 @@ |
1813 | 1813 | iml->next_rcu = inet->mc_list; |
1814 | 1814 | iml->sflist = NULL; |
1815 | 1815 | iml->sfmode = MCAST_EXCLUDE; |
1816 | - rcu_assign_pointer(inet->mc_list, iml); | |
1816 | + RCU_INIT_POINTER(inet->mc_list, iml); | |
1817 | 1817 | ip_mc_inc_group(in_dev, addr); |
1818 | 1818 | err = 0; |
1819 | 1819 | done: |
... | ... | @@ -1835,7 +1835,7 @@ |
1835 | 1835 | } |
1836 | 1836 | err = ip_mc_del_src(in_dev, &iml->multi.imr_multiaddr.s_addr, |
1837 | 1837 | iml->sfmode, psf->sl_count, psf->sl_addr, 0); |
1838 | - rcu_assign_pointer(iml->sflist, NULL); | |
1838 | + RCU_INIT_POINTER(iml->sflist, NULL); | |
1839 | 1839 | /* decrease mem now to avoid the memleak warning */ |
1840 | 1840 | atomic_sub(IP_SFLSIZE(psf->sl_max), &sk->sk_omem_alloc); |
1841 | 1841 | kfree_rcu(psf, rcu); |
... | ... | @@ -2000,7 +2000,7 @@ |
2000 | 2000 | atomic_sub(IP_SFLSIZE(psl->sl_max), &sk->sk_omem_alloc); |
2001 | 2001 | kfree_rcu(psl, rcu); |
2002 | 2002 | } |
2003 | - rcu_assign_pointer(pmc->sflist, newpsl); | |
2003 | + RCU_INIT_POINTER(pmc->sflist, newpsl); | |
2004 | 2004 | psl = newpsl; |
2005 | 2005 | } |
2006 | 2006 | rv = 1; /* > 0 for insert logic below if sl_count is 0 */ |
... | ... | @@ -2103,7 +2103,7 @@ |
2103 | 2103 | } else |
2104 | 2104 | (void) ip_mc_del_src(in_dev, &msf->imsf_multiaddr, pmc->sfmode, |
2105 | 2105 | 0, NULL, 0); |
2106 | - rcu_assign_pointer(pmc->sflist, newpsl); | |
2106 | + RCU_INIT_POINTER(pmc->sflist, newpsl); | |
2107 | 2107 | pmc->sfmode = msf->imsf_fmode; |
2108 | 2108 | err = 0; |
2109 | 2109 | done: |
net/ipv4/ipip.c
... | ... | @@ -231,7 +231,7 @@ |
231 | 231 | (iter = rtnl_dereference(*tp)) != NULL; |
232 | 232 | tp = &iter->next) { |
233 | 233 | if (t == iter) { |
234 | - rcu_assign_pointer(*tp, t->next); | |
234 | + RCU_INIT_POINTER(*tp, t->next); | |
235 | 235 | break; |
236 | 236 | } |
237 | 237 | } |
... | ... | @@ -241,8 +241,8 @@ |
241 | 241 | { |
242 | 242 | struct ip_tunnel __rcu **tp = ipip_bucket(ipn, t); |
243 | 243 | |
244 | - rcu_assign_pointer(t->next, rtnl_dereference(*tp)); | |
245 | - rcu_assign_pointer(*tp, t); | |
244 | + RCU_INIT_POINTER(t->next, rtnl_dereference(*tp)); | |
245 | + RCU_INIT_POINTER(*tp, t); | |
246 | 246 | } |
247 | 247 | |
248 | 248 | static struct ip_tunnel * ipip_tunnel_locate(struct net *net, |
... | ... | @@ -301,7 +301,7 @@ |
301 | 301 | struct ipip_net *ipn = net_generic(net, ipip_net_id); |
302 | 302 | |
303 | 303 | if (dev == ipn->fb_tunnel_dev) |
304 | - rcu_assign_pointer(ipn->tunnels_wc[0], NULL); | |
304 | + RCU_INIT_POINTER(ipn->tunnels_wc[0], NULL); | |
305 | 305 | else |
306 | 306 | ipip_tunnel_unlink(ipn, netdev_priv(dev)); |
307 | 307 | dev_put(dev); |
... | ... | @@ -791,7 +791,7 @@ |
791 | 791 | return -ENOMEM; |
792 | 792 | |
793 | 793 | dev_hold(dev); |
794 | - rcu_assign_pointer(ipn->tunnels_wc[0], tunnel); | |
794 | + RCU_INIT_POINTER(ipn->tunnels_wc[0], tunnel); | |
795 | 795 | return 0; |
796 | 796 | } |
797 | 797 |
net/ipv4/ipmr.c
... | ... | @@ -1176,7 +1176,7 @@ |
1176 | 1176 | ipmr_for_each_table(mrt, net) { |
1177 | 1177 | if (sk == rtnl_dereference(mrt->mroute_sk)) { |
1178 | 1178 | IPV4_DEVCONF_ALL(net, MC_FORWARDING)--; |
1179 | - rcu_assign_pointer(mrt->mroute_sk, NULL); | |
1179 | + RCU_INIT_POINTER(mrt->mroute_sk, NULL); | |
1180 | 1180 | mroute_clean_tables(mrt); |
1181 | 1181 | } |
1182 | 1182 | } |
... | ... | @@ -1224,7 +1224,7 @@ |
1224 | 1224 | |
1225 | 1225 | ret = ip_ra_control(sk, 1, mrtsock_destruct); |
1226 | 1226 | if (ret == 0) { |
1227 | - rcu_assign_pointer(mrt->mroute_sk, sk); | |
1227 | + RCU_INIT_POINTER(mrt->mroute_sk, sk); | |
1228 | 1228 | IPV4_DEVCONF_ALL(net, MC_FORWARDING)++; |
1229 | 1229 | } |
1230 | 1230 | rtnl_unlock(); |
net/ipv4/netfilter/nf_nat_amanda.c
... | ... | @@ -70,14 +70,14 @@ |
70 | 70 | |
71 | 71 | static void __exit nf_nat_amanda_fini(void) |
72 | 72 | { |
73 | - rcu_assign_pointer(nf_nat_amanda_hook, NULL); | |
73 | + RCU_INIT_POINTER(nf_nat_amanda_hook, NULL); | |
74 | 74 | synchronize_rcu(); |
75 | 75 | } |
76 | 76 | |
77 | 77 | static int __init nf_nat_amanda_init(void) |
78 | 78 | { |
79 | 79 | BUG_ON(nf_nat_amanda_hook != NULL); |
80 | - rcu_assign_pointer(nf_nat_amanda_hook, help); | |
80 | + RCU_INIT_POINTER(nf_nat_amanda_hook, help); | |
81 | 81 | return 0; |
82 | 82 | } |
83 | 83 |
net/ipv4/netfilter/nf_nat_core.c
... | ... | @@ -514,7 +514,7 @@ |
514 | 514 | ret = -EBUSY; |
515 | 515 | goto out; |
516 | 516 | } |
517 | - rcu_assign_pointer(nf_nat_protos[proto->protonum], proto); | |
517 | + RCU_INIT_POINTER(nf_nat_protos[proto->protonum], proto); | |
518 | 518 | out: |
519 | 519 | spin_unlock_bh(&nf_nat_lock); |
520 | 520 | return ret; |
... | ... | @@ -525,7 +525,7 @@ |
525 | 525 | void nf_nat_protocol_unregister(const struct nf_nat_protocol *proto) |
526 | 526 | { |
527 | 527 | spin_lock_bh(&nf_nat_lock); |
528 | - rcu_assign_pointer(nf_nat_protos[proto->protonum], | |
528 | + RCU_INIT_POINTER(nf_nat_protos[proto->protonum], | |
529 | 529 | &nf_nat_unknown_protocol); |
530 | 530 | spin_unlock_bh(&nf_nat_lock); |
531 | 531 | synchronize_rcu(); |
... | ... | @@ -736,10 +736,10 @@ |
736 | 736 | /* Sew in builtin protocols. */ |
737 | 737 | spin_lock_bh(&nf_nat_lock); |
738 | 738 | for (i = 0; i < MAX_IP_NAT_PROTO; i++) |
739 | - rcu_assign_pointer(nf_nat_protos[i], &nf_nat_unknown_protocol); | |
740 | - rcu_assign_pointer(nf_nat_protos[IPPROTO_TCP], &nf_nat_protocol_tcp); | |
741 | - rcu_assign_pointer(nf_nat_protos[IPPROTO_UDP], &nf_nat_protocol_udp); | |
742 | - rcu_assign_pointer(nf_nat_protos[IPPROTO_ICMP], &nf_nat_protocol_icmp); | |
739 | + RCU_INIT_POINTER(nf_nat_protos[i], &nf_nat_unknown_protocol); | |
740 | + RCU_INIT_POINTER(nf_nat_protos[IPPROTO_TCP], &nf_nat_protocol_tcp); | |
741 | + RCU_INIT_POINTER(nf_nat_protos[IPPROTO_UDP], &nf_nat_protocol_udp); | |
742 | + RCU_INIT_POINTER(nf_nat_protos[IPPROTO_ICMP], &nf_nat_protocol_icmp); | |
743 | 743 | spin_unlock_bh(&nf_nat_lock); |
744 | 744 | |
745 | 745 | /* Initialize fake conntrack so that NAT will skip it */ |
746 | 746 | |
747 | 747 | |
... | ... | @@ -748,12 +748,12 @@ |
748 | 748 | l3proto = nf_ct_l3proto_find_get((u_int16_t)AF_INET); |
749 | 749 | |
750 | 750 | BUG_ON(nf_nat_seq_adjust_hook != NULL); |
751 | - rcu_assign_pointer(nf_nat_seq_adjust_hook, nf_nat_seq_adjust); | |
751 | + RCU_INIT_POINTER(nf_nat_seq_adjust_hook, nf_nat_seq_adjust); | |
752 | 752 | BUG_ON(nfnetlink_parse_nat_setup_hook != NULL); |
753 | - rcu_assign_pointer(nfnetlink_parse_nat_setup_hook, | |
753 | + RCU_INIT_POINTER(nfnetlink_parse_nat_setup_hook, | |
754 | 754 | nfnetlink_parse_nat_setup); |
755 | 755 | BUG_ON(nf_ct_nat_offset != NULL); |
756 | - rcu_assign_pointer(nf_ct_nat_offset, nf_nat_get_offset); | |
756 | + RCU_INIT_POINTER(nf_ct_nat_offset, nf_nat_get_offset); | |
757 | 757 | return 0; |
758 | 758 | |
759 | 759 | cleanup_extend: |
... | ... | @@ -766,9 +766,9 @@ |
766 | 766 | unregister_pernet_subsys(&nf_nat_net_ops); |
767 | 767 | nf_ct_l3proto_put(l3proto); |
768 | 768 | nf_ct_extend_unregister(&nat_extend); |
769 | - rcu_assign_pointer(nf_nat_seq_adjust_hook, NULL); | |
770 | - rcu_assign_pointer(nfnetlink_parse_nat_setup_hook, NULL); | |
771 | - rcu_assign_pointer(nf_ct_nat_offset, NULL); | |
769 | + RCU_INIT_POINTER(nf_nat_seq_adjust_hook, NULL); | |
770 | + RCU_INIT_POINTER(nfnetlink_parse_nat_setup_hook, NULL); | |
771 | + RCU_INIT_POINTER(nf_ct_nat_offset, NULL); | |
772 | 772 | synchronize_net(); |
773 | 773 | } |
774 | 774 |
net/ipv4/netfilter/nf_nat_ftp.c
... | ... | @@ -113,14 +113,14 @@ |
113 | 113 | |
114 | 114 | static void __exit nf_nat_ftp_fini(void) |
115 | 115 | { |
116 | - rcu_assign_pointer(nf_nat_ftp_hook, NULL); | |
116 | + RCU_INIT_POINTER(nf_nat_ftp_hook, NULL); | |
117 | 117 | synchronize_rcu(); |
118 | 118 | } |
119 | 119 | |
120 | 120 | static int __init nf_nat_ftp_init(void) |
121 | 121 | { |
122 | 122 | BUG_ON(nf_nat_ftp_hook != NULL); |
123 | - rcu_assign_pointer(nf_nat_ftp_hook, nf_nat_ftp); | |
123 | + RCU_INIT_POINTER(nf_nat_ftp_hook, nf_nat_ftp); | |
124 | 124 | return 0; |
125 | 125 | } |
126 | 126 |
net/ipv4/netfilter/nf_nat_h323.c
... | ... | @@ -581,30 +581,30 @@ |
581 | 581 | BUG_ON(nat_callforwarding_hook != NULL); |
582 | 582 | BUG_ON(nat_q931_hook != NULL); |
583 | 583 | |
584 | - rcu_assign_pointer(set_h245_addr_hook, set_h245_addr); | |
585 | - rcu_assign_pointer(set_h225_addr_hook, set_h225_addr); | |
586 | - rcu_assign_pointer(set_sig_addr_hook, set_sig_addr); | |
587 | - rcu_assign_pointer(set_ras_addr_hook, set_ras_addr); | |
588 | - rcu_assign_pointer(nat_rtp_rtcp_hook, nat_rtp_rtcp); | |
589 | - rcu_assign_pointer(nat_t120_hook, nat_t120); | |
590 | - rcu_assign_pointer(nat_h245_hook, nat_h245); | |
591 | - rcu_assign_pointer(nat_callforwarding_hook, nat_callforwarding); | |
592 | - rcu_assign_pointer(nat_q931_hook, nat_q931); | |
584 | + RCU_INIT_POINTER(set_h245_addr_hook, set_h245_addr); | |
585 | + RCU_INIT_POINTER(set_h225_addr_hook, set_h225_addr); | |
586 | + RCU_INIT_POINTER(set_sig_addr_hook, set_sig_addr); | |
587 | + RCU_INIT_POINTER(set_ras_addr_hook, set_ras_addr); | |
588 | + RCU_INIT_POINTER(nat_rtp_rtcp_hook, nat_rtp_rtcp); | |
589 | + RCU_INIT_POINTER(nat_t120_hook, nat_t120); | |
590 | + RCU_INIT_POINTER(nat_h245_hook, nat_h245); | |
591 | + RCU_INIT_POINTER(nat_callforwarding_hook, nat_callforwarding); | |
592 | + RCU_INIT_POINTER(nat_q931_hook, nat_q931); | |
593 | 593 | return 0; |
594 | 594 | } |
595 | 595 | |
596 | 596 | /****************************************************************************/ |
597 | 597 | static void __exit fini(void) |
598 | 598 | { |
599 | - rcu_assign_pointer(set_h245_addr_hook, NULL); | |
600 | - rcu_assign_pointer(set_h225_addr_hook, NULL); | |
601 | - rcu_assign_pointer(set_sig_addr_hook, NULL); | |
602 | - rcu_assign_pointer(set_ras_addr_hook, NULL); | |
603 | - rcu_assign_pointer(nat_rtp_rtcp_hook, NULL); | |
604 | - rcu_assign_pointer(nat_t120_hook, NULL); | |
605 | - rcu_assign_pointer(nat_h245_hook, NULL); | |
606 | - rcu_assign_pointer(nat_callforwarding_hook, NULL); | |
607 | - rcu_assign_pointer(nat_q931_hook, NULL); | |
599 | + RCU_INIT_POINTER(set_h245_addr_hook, NULL); | |
600 | + RCU_INIT_POINTER(set_h225_addr_hook, NULL); | |
601 | + RCU_INIT_POINTER(set_sig_addr_hook, NULL); | |
602 | + RCU_INIT_POINTER(set_ras_addr_hook, NULL); | |
603 | + RCU_INIT_POINTER(nat_rtp_rtcp_hook, NULL); | |
604 | + RCU_INIT_POINTER(nat_t120_hook, NULL); | |
605 | + RCU_INIT_POINTER(nat_h245_hook, NULL); | |
606 | + RCU_INIT_POINTER(nat_callforwarding_hook, NULL); | |
607 | + RCU_INIT_POINTER(nat_q931_hook, NULL); | |
608 | 608 | synchronize_rcu(); |
609 | 609 | } |
610 | 610 |
net/ipv4/netfilter/nf_nat_irc.c
... | ... | @@ -75,14 +75,14 @@ |
75 | 75 | |
76 | 76 | static void __exit nf_nat_irc_fini(void) |
77 | 77 | { |
78 | - rcu_assign_pointer(nf_nat_irc_hook, NULL); | |
78 | + RCU_INIT_POINTER(nf_nat_irc_hook, NULL); | |
79 | 79 | synchronize_rcu(); |
80 | 80 | } |
81 | 81 | |
82 | 82 | static int __init nf_nat_irc_init(void) |
83 | 83 | { |
84 | 84 | BUG_ON(nf_nat_irc_hook != NULL); |
85 | - rcu_assign_pointer(nf_nat_irc_hook, help); | |
85 | + RCU_INIT_POINTER(nf_nat_irc_hook, help); | |
86 | 86 | return 0; |
87 | 87 | } |
88 | 88 |
net/ipv4/netfilter/nf_nat_pptp.c
... | ... | @@ -282,25 +282,25 @@ |
282 | 282 | nf_nat_need_gre(); |
283 | 283 | |
284 | 284 | BUG_ON(nf_nat_pptp_hook_outbound != NULL); |
285 | - rcu_assign_pointer(nf_nat_pptp_hook_outbound, pptp_outbound_pkt); | |
285 | + RCU_INIT_POINTER(nf_nat_pptp_hook_outbound, pptp_outbound_pkt); | |
286 | 286 | |
287 | 287 | BUG_ON(nf_nat_pptp_hook_inbound != NULL); |
288 | - rcu_assign_pointer(nf_nat_pptp_hook_inbound, pptp_inbound_pkt); | |
288 | + RCU_INIT_POINTER(nf_nat_pptp_hook_inbound, pptp_inbound_pkt); | |
289 | 289 | |
290 | 290 | BUG_ON(nf_nat_pptp_hook_exp_gre != NULL); |
291 | - rcu_assign_pointer(nf_nat_pptp_hook_exp_gre, pptp_exp_gre); | |
291 | + RCU_INIT_POINTER(nf_nat_pptp_hook_exp_gre, pptp_exp_gre); | |
292 | 292 | |
293 | 293 | BUG_ON(nf_nat_pptp_hook_expectfn != NULL); |
294 | - rcu_assign_pointer(nf_nat_pptp_hook_expectfn, pptp_nat_expected); | |
294 | + RCU_INIT_POINTER(nf_nat_pptp_hook_expectfn, pptp_nat_expected); | |
295 | 295 | return 0; |
296 | 296 | } |
297 | 297 | |
298 | 298 | static void __exit nf_nat_helper_pptp_fini(void) |
299 | 299 | { |
300 | - rcu_assign_pointer(nf_nat_pptp_hook_expectfn, NULL); | |
301 | - rcu_assign_pointer(nf_nat_pptp_hook_exp_gre, NULL); | |
302 | - rcu_assign_pointer(nf_nat_pptp_hook_inbound, NULL); | |
303 | - rcu_assign_pointer(nf_nat_pptp_hook_outbound, NULL); | |
300 | + RCU_INIT_POINTER(nf_nat_pptp_hook_expectfn, NULL); | |
301 | + RCU_INIT_POINTER(nf_nat_pptp_hook_exp_gre, NULL); | |
302 | + RCU_INIT_POINTER(nf_nat_pptp_hook_inbound, NULL); | |
303 | + RCU_INIT_POINTER(nf_nat_pptp_hook_outbound, NULL); | |
304 | 304 | synchronize_rcu(); |
305 | 305 | } |
306 | 306 |
net/ipv4/netfilter/nf_nat_sip.c
... | ... | @@ -528,13 +528,13 @@ |
528 | 528 | |
529 | 529 | static void __exit nf_nat_sip_fini(void) |
530 | 530 | { |
531 | - rcu_assign_pointer(nf_nat_sip_hook, NULL); | |
532 | - rcu_assign_pointer(nf_nat_sip_seq_adjust_hook, NULL); | |
533 | - rcu_assign_pointer(nf_nat_sip_expect_hook, NULL); | |
534 | - rcu_assign_pointer(nf_nat_sdp_addr_hook, NULL); | |
535 | - rcu_assign_pointer(nf_nat_sdp_port_hook, NULL); | |
536 | - rcu_assign_pointer(nf_nat_sdp_session_hook, NULL); | |
537 | - rcu_assign_pointer(nf_nat_sdp_media_hook, NULL); | |
531 | + RCU_INIT_POINTER(nf_nat_sip_hook, NULL); | |
532 | + RCU_INIT_POINTER(nf_nat_sip_seq_adjust_hook, NULL); | |
533 | + RCU_INIT_POINTER(nf_nat_sip_expect_hook, NULL); | |
534 | + RCU_INIT_POINTER(nf_nat_sdp_addr_hook, NULL); | |
535 | + RCU_INIT_POINTER(nf_nat_sdp_port_hook, NULL); | |
536 | + RCU_INIT_POINTER(nf_nat_sdp_session_hook, NULL); | |
537 | + RCU_INIT_POINTER(nf_nat_sdp_media_hook, NULL); | |
538 | 538 | synchronize_rcu(); |
539 | 539 | } |
540 | 540 | |
... | ... | @@ -547,13 +547,13 @@ |
547 | 547 | BUG_ON(nf_nat_sdp_port_hook != NULL); |
548 | 548 | BUG_ON(nf_nat_sdp_session_hook != NULL); |
549 | 549 | BUG_ON(nf_nat_sdp_media_hook != NULL); |
550 | - rcu_assign_pointer(nf_nat_sip_hook, ip_nat_sip); | |
551 | - rcu_assign_pointer(nf_nat_sip_seq_adjust_hook, ip_nat_sip_seq_adjust); | |
552 | - rcu_assign_pointer(nf_nat_sip_expect_hook, ip_nat_sip_expect); | |
553 | - rcu_assign_pointer(nf_nat_sdp_addr_hook, ip_nat_sdp_addr); | |
554 | - rcu_assign_pointer(nf_nat_sdp_port_hook, ip_nat_sdp_port); | |
555 | - rcu_assign_pointer(nf_nat_sdp_session_hook, ip_nat_sdp_session); | |
556 | - rcu_assign_pointer(nf_nat_sdp_media_hook, ip_nat_sdp_media); | |
550 | + RCU_INIT_POINTER(nf_nat_sip_hook, ip_nat_sip); | |
551 | + RCU_INIT_POINTER(nf_nat_sip_seq_adjust_hook, ip_nat_sip_seq_adjust); | |
552 | + RCU_INIT_POINTER(nf_nat_sip_expect_hook, ip_nat_sip_expect); | |
553 | + RCU_INIT_POINTER(nf_nat_sdp_addr_hook, ip_nat_sdp_addr); | |
554 | + RCU_INIT_POINTER(nf_nat_sdp_port_hook, ip_nat_sdp_port); | |
555 | + RCU_INIT_POINTER(nf_nat_sdp_session_hook, ip_nat_sdp_session); | |
556 | + RCU_INIT_POINTER(nf_nat_sdp_media_hook, ip_nat_sdp_media); | |
557 | 557 | return 0; |
558 | 558 | } |
559 | 559 |
net/ipv4/netfilter/nf_nat_snmp_basic.c
... | ... | @@ -1310,7 +1310,7 @@ |
1310 | 1310 | int ret = 0; |
1311 | 1311 | |
1312 | 1312 | BUG_ON(nf_nat_snmp_hook != NULL); |
1313 | - rcu_assign_pointer(nf_nat_snmp_hook, help); | |
1313 | + RCU_INIT_POINTER(nf_nat_snmp_hook, help); | |
1314 | 1314 | |
1315 | 1315 | ret = nf_conntrack_helper_register(&snmp_trap_helper); |
1316 | 1316 | if (ret < 0) { |
... | ... | @@ -1322,7 +1322,7 @@ |
1322 | 1322 | |
1323 | 1323 | static void __exit nf_nat_snmp_basic_fini(void) |
1324 | 1324 | { |
1325 | - rcu_assign_pointer(nf_nat_snmp_hook, NULL); | |
1325 | + RCU_INIT_POINTER(nf_nat_snmp_hook, NULL); | |
1326 | 1326 | nf_conntrack_helper_unregister(&snmp_trap_helper); |
1327 | 1327 | } |
1328 | 1328 |
net/ipv4/netfilter/nf_nat_standalone.c
... | ... | @@ -284,7 +284,7 @@ |
284 | 284 | |
285 | 285 | #ifdef CONFIG_XFRM |
286 | 286 | BUG_ON(ip_nat_decode_session != NULL); |
287 | - rcu_assign_pointer(ip_nat_decode_session, nat_decode_session); | |
287 | + RCU_INIT_POINTER(ip_nat_decode_session, nat_decode_session); | |
288 | 288 | #endif |
289 | 289 | ret = nf_nat_rule_init(); |
290 | 290 | if (ret < 0) { |
... | ... | @@ -302,7 +302,7 @@ |
302 | 302 | nf_nat_rule_cleanup(); |
303 | 303 | cleanup_decode_session: |
304 | 304 | #ifdef CONFIG_XFRM |
305 | - rcu_assign_pointer(ip_nat_decode_session, NULL); | |
305 | + RCU_INIT_POINTER(ip_nat_decode_session, NULL); | |
306 | 306 | synchronize_net(); |
307 | 307 | #endif |
308 | 308 | return ret; |
... | ... | @@ -313,7 +313,7 @@ |
313 | 313 | nf_unregister_hooks(nf_nat_ops, ARRAY_SIZE(nf_nat_ops)); |
314 | 314 | nf_nat_rule_cleanup(); |
315 | 315 | #ifdef CONFIG_XFRM |
316 | - rcu_assign_pointer(ip_nat_decode_session, NULL); | |
316 | + RCU_INIT_POINTER(ip_nat_decode_session, NULL); | |
317 | 317 | synchronize_net(); |
318 | 318 | #endif |
319 | 319 | /* Conntrack caches are unregistered in nf_conntrack_cleanup */ |
net/ipv4/netfilter/nf_nat_tftp.c
... | ... | @@ -36,14 +36,14 @@ |
36 | 36 | |
37 | 37 | static void __exit nf_nat_tftp_fini(void) |
38 | 38 | { |
39 | - rcu_assign_pointer(nf_nat_tftp_hook, NULL); | |
39 | + RCU_INIT_POINTER(nf_nat_tftp_hook, NULL); | |
40 | 40 | synchronize_rcu(); |
41 | 41 | } |
42 | 42 | |
43 | 43 | static int __init nf_nat_tftp_init(void) |
44 | 44 | { |
45 | 45 | BUG_ON(nf_nat_tftp_hook != NULL); |
46 | - rcu_assign_pointer(nf_nat_tftp_hook, help); | |
46 | + RCU_INIT_POINTER(nf_nat_tftp_hook, help); | |
47 | 47 | return 0; |
48 | 48 | } |
49 | 49 |
net/ipv6/addrconf.c
... | ... | @@ -428,7 +428,7 @@ |
428 | 428 | ndev->tstamp = jiffies; |
429 | 429 | addrconf_sysctl_register(ndev); |
430 | 430 | /* protected by rtnl_lock */ |
431 | - rcu_assign_pointer(dev->ip6_ptr, ndev); | |
431 | + RCU_INIT_POINTER(dev->ip6_ptr, ndev); | |
432 | 432 | |
433 | 433 | /* Join all-node multicast group */ |
434 | 434 | ipv6_dev_mc_inc(dev, &in6addr_linklocal_allnodes); |
... | ... | @@ -2733,7 +2733,7 @@ |
2733 | 2733 | idev->dead = 1; |
2734 | 2734 | |
2735 | 2735 | /* protected by rtnl_lock */ |
2736 | - rcu_assign_pointer(dev->ip6_ptr, NULL); | |
2736 | + RCU_INIT_POINTER(dev->ip6_ptr, NULL); | |
2737 | 2737 | |
2738 | 2738 | /* Step 1.5: remove snmp6 entry */ |
2739 | 2739 | snmp6_unregister_dev(idev); |
net/ipv6/ip6_tunnel.c
... | ... | @@ -218,8 +218,8 @@ |
218 | 218 | { |
219 | 219 | struct ip6_tnl __rcu **tp = ip6_tnl_bucket(ip6n, &t->parms); |
220 | 220 | |
221 | - rcu_assign_pointer(t->next , rtnl_dereference(*tp)); | |
222 | - rcu_assign_pointer(*tp, t); | |
221 | + RCU_INIT_POINTER(t->next , rtnl_dereference(*tp)); | |
222 | + RCU_INIT_POINTER(*tp, t); | |
223 | 223 | } |
224 | 224 | |
225 | 225 | /** |
... | ... | @@ -237,7 +237,7 @@ |
237 | 237 | (iter = rtnl_dereference(*tp)) != NULL; |
238 | 238 | tp = &iter->next) { |
239 | 239 | if (t == iter) { |
240 | - rcu_assign_pointer(*tp, t->next); | |
240 | + RCU_INIT_POINTER(*tp, t->next); | |
241 | 241 | break; |
242 | 242 | } |
243 | 243 | } |
... | ... | @@ -350,7 +350,7 @@ |
350 | 350 | struct ip6_tnl_net *ip6n = net_generic(net, ip6_tnl_net_id); |
351 | 351 | |
352 | 352 | if (dev == ip6n->fb_tnl_dev) |
353 | - rcu_assign_pointer(ip6n->tnls_wc[0], NULL); | |
353 | + RCU_INIT_POINTER(ip6n->tnls_wc[0], NULL); | |
354 | 354 | else |
355 | 355 | ip6_tnl_unlink(ip6n, t); |
356 | 356 | ip6_tnl_dst_reset(t); |
... | ... | @@ -1440,7 +1440,7 @@ |
1440 | 1440 | |
1441 | 1441 | t->parms.proto = IPPROTO_IPV6; |
1442 | 1442 | dev_hold(dev); |
1443 | - rcu_assign_pointer(ip6n->tnls_wc[0], t); | |
1443 | + RCU_INIT_POINTER(ip6n->tnls_wc[0], t); | |
1444 | 1444 | return 0; |
1445 | 1445 | } |
1446 | 1446 |
net/ipv6/raw.c
... | ... | @@ -130,14 +130,14 @@ |
130 | 130 | |
131 | 131 | int rawv6_mh_filter_register(mh_filter_t filter) |
132 | 132 | { |
133 | - rcu_assign_pointer(mh_filter, filter); | |
133 | + RCU_INIT_POINTER(mh_filter, filter); | |
134 | 134 | return 0; |
135 | 135 | } |
136 | 136 | EXPORT_SYMBOL(rawv6_mh_filter_register); |
137 | 137 | |
138 | 138 | int rawv6_mh_filter_unregister(mh_filter_t filter) |
139 | 139 | { |
140 | - rcu_assign_pointer(mh_filter, NULL); | |
140 | + RCU_INIT_POINTER(mh_filter, NULL); | |
141 | 141 | synchronize_rcu(); |
142 | 142 | return 0; |
143 | 143 | } |
net/ipv6/sit.c
... | ... | @@ -182,7 +182,7 @@ |
182 | 182 | (iter = rtnl_dereference(*tp)) != NULL; |
183 | 183 | tp = &iter->next) { |
184 | 184 | if (t == iter) { |
185 | - rcu_assign_pointer(*tp, t->next); | |
185 | + RCU_INIT_POINTER(*tp, t->next); | |
186 | 186 | break; |
187 | 187 | } |
188 | 188 | } |
... | ... | @@ -192,8 +192,8 @@ |
192 | 192 | { |
193 | 193 | struct ip_tunnel __rcu **tp = ipip6_bucket(sitn, t); |
194 | 194 | |
195 | - rcu_assign_pointer(t->next, rtnl_dereference(*tp)); | |
196 | - rcu_assign_pointer(*tp, t); | |
195 | + RCU_INIT_POINTER(t->next, rtnl_dereference(*tp)); | |
196 | + RCU_INIT_POINTER(*tp, t); | |
197 | 197 | } |
198 | 198 | |
199 | 199 | static void ipip6_tunnel_clone_6rd(struct net_device *dev, struct sit_net *sitn) |
... | ... | @@ -391,7 +391,7 @@ |
391 | 391 | p->addr = a->addr; |
392 | 392 | p->flags = a->flags; |
393 | 393 | t->prl_count++; |
394 | - rcu_assign_pointer(t->prl, p); | |
394 | + RCU_INIT_POINTER(t->prl, p); | |
395 | 395 | out: |
396 | 396 | return err; |
397 | 397 | } |
... | ... | @@ -474,7 +474,7 @@ |
474 | 474 | struct sit_net *sitn = net_generic(net, sit_net_id); |
475 | 475 | |
476 | 476 | if (dev == sitn->fb_tunnel_dev) { |
477 | - rcu_assign_pointer(sitn->tunnels_wc[0], NULL); | |
477 | + RCU_INIT_POINTER(sitn->tunnels_wc[0], NULL); | |
478 | 478 | } else { |
479 | 479 | ipip6_tunnel_unlink(sitn, netdev_priv(dev)); |
480 | 480 | ipip6_tunnel_del_prl(netdev_priv(dev), NULL); |
... | ... | @@ -1173,7 +1173,7 @@ |
1173 | 1173 | if (!dev->tstats) |
1174 | 1174 | return -ENOMEM; |
1175 | 1175 | dev_hold(dev); |
1176 | - rcu_assign_pointer(sitn->tunnels_wc[0], tunnel); | |
1176 | + RCU_INIT_POINTER(sitn->tunnels_wc[0], tunnel); | |
1177 | 1177 | return 0; |
1178 | 1178 | } |
1179 | 1179 |
net/mac80211/agg-rx.c
... | ... | @@ -69,7 +69,7 @@ |
69 | 69 | if (!tid_rx) |
70 | 70 | return; |
71 | 71 | |
72 | - rcu_assign_pointer(sta->ampdu_mlme.tid_rx[tid], NULL); | |
72 | + RCU_INIT_POINTER(sta->ampdu_mlme.tid_rx[tid], NULL); | |
73 | 73 | |
74 | 74 | #ifdef CONFIG_MAC80211_HT_DEBUG |
75 | 75 | printk(KERN_DEBUG "Rx BA session stop requested for %pM tid %u\n", |
... | ... | @@ -340,7 +340,7 @@ |
340 | 340 | status = WLAN_STATUS_SUCCESS; |
341 | 341 | |
342 | 342 | /* activate it for RX */ |
343 | - rcu_assign_pointer(sta->ampdu_mlme.tid_rx[tid], tid_agg_rx); | |
343 | + RCU_INIT_POINTER(sta->ampdu_mlme.tid_rx[tid], tid_agg_rx); | |
344 | 344 | |
345 | 345 | if (timeout) |
346 | 346 | mod_timer(&tid_agg_rx->session_timer, TU_TO_EXP_TIME(timeout)); |
net/mac80211/cfg.c
... | ... | @@ -62,7 +62,7 @@ |
62 | 62 | |
63 | 63 | if (type == NL80211_IFTYPE_AP_VLAN && |
64 | 64 | params && params->use_4addr == 0) |
65 | - rcu_assign_pointer(sdata->u.vlan.sta, NULL); | |
65 | + RCU_INIT_POINTER(sdata->u.vlan.sta, NULL); | |
66 | 66 | else if (type == NL80211_IFTYPE_STATION && |
67 | 67 | params && params->use_4addr >= 0) |
68 | 68 | sdata->u.mgd.use_4addr = params->use_4addr; |
... | ... | @@ -542,7 +542,7 @@ |
542 | 542 | |
543 | 543 | sdata->vif.bss_conf.dtim_period = new->dtim_period; |
544 | 544 | |
545 | - rcu_assign_pointer(sdata->u.ap.beacon, new); | |
545 | + RCU_INIT_POINTER(sdata->u.ap.beacon, new); | |
546 | 546 | |
547 | 547 | synchronize_rcu(); |
548 | 548 | |
... | ... | @@ -594,7 +594,7 @@ |
594 | 594 | if (!old) |
595 | 595 | return -ENOENT; |
596 | 596 | |
597 | - rcu_assign_pointer(sdata->u.ap.beacon, NULL); | |
597 | + RCU_INIT_POINTER(sdata->u.ap.beacon, NULL); | |
598 | 598 | synchronize_rcu(); |
599 | 599 | kfree(old); |
600 | 600 | |
... | ... | @@ -857,7 +857,7 @@ |
857 | 857 | return -EBUSY; |
858 | 858 | } |
859 | 859 | |
860 | - rcu_assign_pointer(vlansdata->u.vlan.sta, sta); | |
860 | + RCU_INIT_POINTER(vlansdata->u.vlan.sta, sta); | |
861 | 861 | } |
862 | 862 | |
863 | 863 | sta->sdata = vlansdata; |
net/mac80211/ibss.c
... | ... | @@ -84,7 +84,7 @@ |
84 | 84 | drv_reset_tsf(local); |
85 | 85 | |
86 | 86 | skb = ifibss->skb; |
87 | - rcu_assign_pointer(ifibss->presp, NULL); | |
87 | + RCU_INIT_POINTER(ifibss->presp, NULL); | |
88 | 88 | synchronize_rcu(); |
89 | 89 | skb->data = skb->head; |
90 | 90 | skb->len = 0; |
... | ... | @@ -184,7 +184,7 @@ |
184 | 184 | *pos++ = 0; /* U-APSD no in use */ |
185 | 185 | } |
186 | 186 | |
187 | - rcu_assign_pointer(ifibss->presp, skb); | |
187 | + RCU_INIT_POINTER(ifibss->presp, skb); | |
188 | 188 | |
189 | 189 | sdata->vif.bss_conf.beacon_int = beacon_int; |
190 | 190 | sdata->vif.bss_conf.basic_rates = basic_rates; |
... | ... | @@ -995,7 +995,7 @@ |
995 | 995 | kfree(sdata->u.ibss.ie); |
996 | 996 | skb = rcu_dereference_protected(sdata->u.ibss.presp, |
997 | 997 | lockdep_is_held(&sdata->u.ibss.mtx)); |
998 | - rcu_assign_pointer(sdata->u.ibss.presp, NULL); | |
998 | + RCU_INIT_POINTER(sdata->u.ibss.presp, NULL); | |
999 | 999 | sdata->vif.bss_conf.ibss_joined = false; |
1000 | 1000 | ieee80211_bss_info_change_notify(sdata, BSS_CHANGED_BEACON_ENABLED | |
1001 | 1001 | BSS_CHANGED_IBSS); |
net/mac80211/iface.c
net/mac80211/sta_info.c
... | ... | @@ -72,7 +72,7 @@ |
72 | 72 | if (!s) |
73 | 73 | return -ENOENT; |
74 | 74 | if (s == sta) { |
75 | - rcu_assign_pointer(local->sta_hash[STA_HASH(sta->sta.addr)], | |
75 | + RCU_INIT_POINTER(local->sta_hash[STA_HASH(sta->sta.addr)], | |
76 | 76 | s->hnext); |
77 | 77 | return 0; |
78 | 78 | } |
... | ... | @@ -82,7 +82,7 @@ |
82 | 82 | s = rcu_dereference_protected(s->hnext, |
83 | 83 | lockdep_is_held(&local->sta_lock)); |
84 | 84 | if (rcu_access_pointer(s->hnext)) { |
85 | - rcu_assign_pointer(s->hnext, sta->hnext); | |
85 | + RCU_INIT_POINTER(s->hnext, sta->hnext); | |
86 | 86 | return 0; |
87 | 87 | } |
88 | 88 | |
... | ... | @@ -184,7 +184,7 @@ |
184 | 184 | struct sta_info *sta) |
185 | 185 | { |
186 | 186 | sta->hnext = local->sta_hash[STA_HASH(sta->sta.addr)]; |
187 | - rcu_assign_pointer(local->sta_hash[STA_HASH(sta->sta.addr)], sta); | |
187 | + RCU_INIT_POINTER(local->sta_hash[STA_HASH(sta->sta.addr)], sta); | |
188 | 188 | } |
189 | 189 | |
190 | 190 | static void sta_unblock(struct work_struct *wk) |
... | ... | @@ -672,7 +672,7 @@ |
672 | 672 | local->sta_generation++; |
673 | 673 | |
674 | 674 | if (sdata->vif.type == NL80211_IFTYPE_AP_VLAN) |
675 | - rcu_assign_pointer(sdata->u.vlan.sta, NULL); | |
675 | + RCU_INIT_POINTER(sdata->u.vlan.sta, NULL); | |
676 | 676 | |
677 | 677 | if (sta->uploaded) { |
678 | 678 | if (sdata->vif.type == NL80211_IFTYPE_AP_VLAN) |
net/netfilter/core.c
... | ... | @@ -37,7 +37,7 @@ |
37 | 37 | err = mutex_lock_interruptible(&afinfo_mutex); |
38 | 38 | if (err < 0) |
39 | 39 | return err; |
40 | - rcu_assign_pointer(nf_afinfo[afinfo->family], afinfo); | |
40 | + RCU_INIT_POINTER(nf_afinfo[afinfo->family], afinfo); | |
41 | 41 | mutex_unlock(&afinfo_mutex); |
42 | 42 | return 0; |
43 | 43 | } |
... | ... | @@ -46,7 +46,7 @@ |
46 | 46 | void nf_unregister_afinfo(const struct nf_afinfo *afinfo) |
47 | 47 | { |
48 | 48 | mutex_lock(&afinfo_mutex); |
49 | - rcu_assign_pointer(nf_afinfo[afinfo->family], NULL); | |
49 | + RCU_INIT_POINTER(nf_afinfo[afinfo->family], NULL); | |
50 | 50 | mutex_unlock(&afinfo_mutex); |
51 | 51 | synchronize_rcu(); |
52 | 52 | } |
net/netfilter/nf_conntrack_core.c
... | ... | @@ -779,7 +779,7 @@ |
779 | 779 | if (exp->helper) { |
780 | 780 | help = nf_ct_helper_ext_add(ct, GFP_ATOMIC); |
781 | 781 | if (help) |
782 | - rcu_assign_pointer(help->helper, exp->helper); | |
782 | + RCU_INIT_POINTER(help->helper, exp->helper); | |
783 | 783 | } |
784 | 784 | |
785 | 785 | #ifdef CONFIG_NF_CONNTRACK_MARK |
... | ... | @@ -1317,7 +1317,7 @@ |
1317 | 1317 | void nf_conntrack_cleanup(struct net *net) |
1318 | 1318 | { |
1319 | 1319 | if (net_eq(net, &init_net)) |
1320 | - rcu_assign_pointer(ip_ct_attach, NULL); | |
1320 | + RCU_INIT_POINTER(ip_ct_attach, NULL); | |
1321 | 1321 | |
1322 | 1322 | /* This makes sure all current packets have passed through |
1323 | 1323 | netfilter framework. Roll on, two-stage module |
... | ... | @@ -1327,7 +1327,7 @@ |
1327 | 1327 | nf_conntrack_cleanup_net(net); |
1328 | 1328 | |
1329 | 1329 | if (net_eq(net, &init_net)) { |
1330 | - rcu_assign_pointer(nf_ct_destroy, NULL); | |
1330 | + RCU_INIT_POINTER(nf_ct_destroy, NULL); | |
1331 | 1331 | nf_conntrack_cleanup_init_net(); |
1332 | 1332 | } |
1333 | 1333 | } |
1334 | 1334 | |
... | ... | @@ -1576,11 +1576,11 @@ |
1576 | 1576 | |
1577 | 1577 | if (net_eq(net, &init_net)) { |
1578 | 1578 | /* For use by REJECT target */ |
1579 | - rcu_assign_pointer(ip_ct_attach, nf_conntrack_attach); | |
1580 | - rcu_assign_pointer(nf_ct_destroy, destroy_conntrack); | |
1579 | + RCU_INIT_POINTER(ip_ct_attach, nf_conntrack_attach); | |
1580 | + RCU_INIT_POINTER(nf_ct_destroy, destroy_conntrack); | |
1581 | 1581 | |
1582 | 1582 | /* Howto get NAT offsets */ |
1583 | - rcu_assign_pointer(nf_ct_nat_offset, NULL); | |
1583 | + RCU_INIT_POINTER(nf_ct_nat_offset, NULL); | |
1584 | 1584 | } |
1585 | 1585 | return 0; |
1586 | 1586 |
net/netfilter/nf_conntrack_ecache.c
... | ... | @@ -94,7 +94,7 @@ |
94 | 94 | ret = -EBUSY; |
95 | 95 | goto out_unlock; |
96 | 96 | } |
97 | - rcu_assign_pointer(nf_conntrack_event_cb, new); | |
97 | + RCU_INIT_POINTER(nf_conntrack_event_cb, new); | |
98 | 98 | mutex_unlock(&nf_ct_ecache_mutex); |
99 | 99 | return ret; |
100 | 100 | |
... | ... | @@ -112,7 +112,7 @@ |
112 | 112 | notify = rcu_dereference_protected(nf_conntrack_event_cb, |
113 | 113 | lockdep_is_held(&nf_ct_ecache_mutex)); |
114 | 114 | BUG_ON(notify != new); |
115 | - rcu_assign_pointer(nf_conntrack_event_cb, NULL); | |
115 | + RCU_INIT_POINTER(nf_conntrack_event_cb, NULL); | |
116 | 116 | mutex_unlock(&nf_ct_ecache_mutex); |
117 | 117 | } |
118 | 118 | EXPORT_SYMBOL_GPL(nf_conntrack_unregister_notifier); |
... | ... | @@ -129,7 +129,7 @@ |
129 | 129 | ret = -EBUSY; |
130 | 130 | goto out_unlock; |
131 | 131 | } |
132 | - rcu_assign_pointer(nf_expect_event_cb, new); | |
132 | + RCU_INIT_POINTER(nf_expect_event_cb, new); | |
133 | 133 | mutex_unlock(&nf_ct_ecache_mutex); |
134 | 134 | return ret; |
135 | 135 | |
... | ... | @@ -147,7 +147,7 @@ |
147 | 147 | notify = rcu_dereference_protected(nf_expect_event_cb, |
148 | 148 | lockdep_is_held(&nf_ct_ecache_mutex)); |
149 | 149 | BUG_ON(notify != new); |
150 | - rcu_assign_pointer(nf_expect_event_cb, NULL); | |
150 | + RCU_INIT_POINTER(nf_expect_event_cb, NULL); | |
151 | 151 | mutex_unlock(&nf_ct_ecache_mutex); |
152 | 152 | } |
153 | 153 | EXPORT_SYMBOL_GPL(nf_ct_expect_unregister_notifier); |
net/netfilter/nf_conntrack_extend.c
... | ... | @@ -169,7 +169,7 @@ |
169 | 169 | before updating alloc_size */ |
170 | 170 | type->alloc_size = ALIGN(sizeof(struct nf_ct_ext), type->align) |
171 | 171 | + type->len; |
172 | - rcu_assign_pointer(nf_ct_ext_types[type->id], type); | |
172 | + RCU_INIT_POINTER(nf_ct_ext_types[type->id], type); | |
173 | 173 | update_alloc_size(type); |
174 | 174 | out: |
175 | 175 | mutex_unlock(&nf_ct_ext_type_mutex); |
... | ... | @@ -181,7 +181,7 @@ |
181 | 181 | void nf_ct_extend_unregister(struct nf_ct_ext_type *type) |
182 | 182 | { |
183 | 183 | mutex_lock(&nf_ct_ext_type_mutex); |
184 | - rcu_assign_pointer(nf_ct_ext_types[type->id], NULL); | |
184 | + RCU_INIT_POINTER(nf_ct_ext_types[type->id], NULL); | |
185 | 185 | update_alloc_size(type); |
186 | 186 | mutex_unlock(&nf_ct_ext_type_mutex); |
187 | 187 | rcu_barrier(); /* Wait for completion of call_rcu()'s */ |
net/netfilter/nf_conntrack_helper.c
... | ... | @@ -131,7 +131,7 @@ |
131 | 131 | helper = __nf_ct_helper_find(&ct->tuplehash[IP_CT_DIR_REPLY].tuple); |
132 | 132 | if (helper == NULL) { |
133 | 133 | if (help) |
134 | - rcu_assign_pointer(help->helper, NULL); | |
134 | + RCU_INIT_POINTER(help->helper, NULL); | |
135 | 135 | goto out; |
136 | 136 | } |
137 | 137 | |
... | ... | @@ -145,7 +145,7 @@ |
145 | 145 | memset(&help->help, 0, sizeof(help->help)); |
146 | 146 | } |
147 | 147 | |
148 | - rcu_assign_pointer(help->helper, helper); | |
148 | + RCU_INIT_POINTER(help->helper, helper); | |
149 | 149 | out: |
150 | 150 | return ret; |
151 | 151 | } |
... | ... | @@ -162,7 +162,7 @@ |
162 | 162 | lockdep_is_held(&nf_conntrack_lock) |
163 | 163 | ) == me) { |
164 | 164 | nf_conntrack_event(IPCT_HELPER, ct); |
165 | - rcu_assign_pointer(help->helper, NULL); | |
165 | + RCU_INIT_POINTER(help->helper, NULL); | |
166 | 166 | } |
167 | 167 | return 0; |
168 | 168 | } |
net/netfilter/nf_conntrack_netlink.c
... | ... | @@ -1125,7 +1125,7 @@ |
1125 | 1125 | if (help && help->helper) { |
1126 | 1126 | /* we had a helper before ... */ |
1127 | 1127 | nf_ct_remove_expectations(ct); |
1128 | - rcu_assign_pointer(help->helper, NULL); | |
1128 | + RCU_INIT_POINTER(help->helper, NULL); | |
1129 | 1129 | } |
1130 | 1130 | |
1131 | 1131 | return 0; |
... | ... | @@ -1163,7 +1163,7 @@ |
1163 | 1163 | return -EOPNOTSUPP; |
1164 | 1164 | } |
1165 | 1165 | |
1166 | - rcu_assign_pointer(help->helper, helper); | |
1166 | + RCU_INIT_POINTER(help->helper, helper); | |
1167 | 1167 | |
1168 | 1168 | return 0; |
1169 | 1169 | } |
... | ... | @@ -1386,7 +1386,7 @@ |
1386 | 1386 | } |
1387 | 1387 | |
1388 | 1388 | /* not in hash table yet so not strictly necessary */ |
1389 | - rcu_assign_pointer(help->helper, helper); | |
1389 | + RCU_INIT_POINTER(help->helper, helper); | |
1390 | 1390 | } |
1391 | 1391 | } else { |
1392 | 1392 | /* try an implicit helper assignation */ |
net/netfilter/nf_log.c
... | ... | @@ -55,7 +55,7 @@ |
55 | 55 | llog = rcu_dereference_protected(nf_loggers[pf], |
56 | 56 | lockdep_is_held(&nf_log_mutex)); |
57 | 57 | if (llog == NULL) |
58 | - rcu_assign_pointer(nf_loggers[pf], logger); | |
58 | + RCU_INIT_POINTER(nf_loggers[pf], logger); | |
59 | 59 | } |
60 | 60 | |
61 | 61 | mutex_unlock(&nf_log_mutex); |
... | ... | @@ -74,7 +74,7 @@ |
74 | 74 | c_logger = rcu_dereference_protected(nf_loggers[i], |
75 | 75 | lockdep_is_held(&nf_log_mutex)); |
76 | 76 | if (c_logger == logger) |
77 | - rcu_assign_pointer(nf_loggers[i], NULL); | |
77 | + RCU_INIT_POINTER(nf_loggers[i], NULL); | |
78 | 78 | list_del(&logger->list[i]); |
79 | 79 | } |
80 | 80 | mutex_unlock(&nf_log_mutex); |
... | ... | @@ -92,7 +92,7 @@ |
92 | 92 | mutex_unlock(&nf_log_mutex); |
93 | 93 | return -ENOENT; |
94 | 94 | } |
95 | - rcu_assign_pointer(nf_loggers[pf], logger); | |
95 | + RCU_INIT_POINTER(nf_loggers[pf], logger); | |
96 | 96 | mutex_unlock(&nf_log_mutex); |
97 | 97 | return 0; |
98 | 98 | } |
... | ... | @@ -103,7 +103,7 @@ |
103 | 103 | if (pf >= ARRAY_SIZE(nf_loggers)) |
104 | 104 | return; |
105 | 105 | mutex_lock(&nf_log_mutex); |
106 | - rcu_assign_pointer(nf_loggers[pf], NULL); | |
106 | + RCU_INIT_POINTER(nf_loggers[pf], NULL); | |
107 | 107 | mutex_unlock(&nf_log_mutex); |
108 | 108 | } |
109 | 109 | EXPORT_SYMBOL(nf_log_unbind_pf); |
... | ... | @@ -250,7 +250,7 @@ |
250 | 250 | mutex_unlock(&nf_log_mutex); |
251 | 251 | return -ENOENT; |
252 | 252 | } |
253 | - rcu_assign_pointer(nf_loggers[tindex], logger); | |
253 | + RCU_INIT_POINTER(nf_loggers[tindex], logger); | |
254 | 254 | mutex_unlock(&nf_log_mutex); |
255 | 255 | } else { |
256 | 256 | mutex_lock(&nf_log_mutex); |
net/netfilter/nf_queue.c
... | ... | @@ -40,7 +40,7 @@ |
40 | 40 | else if (old) |
41 | 41 | ret = -EBUSY; |
42 | 42 | else { |
43 | - rcu_assign_pointer(queue_handler[pf], qh); | |
43 | + RCU_INIT_POINTER(queue_handler[pf], qh); | |
44 | 44 | ret = 0; |
45 | 45 | } |
46 | 46 | mutex_unlock(&queue_handler_mutex); |
... | ... | @@ -65,7 +65,7 @@ |
65 | 65 | return -EINVAL; |
66 | 66 | } |
67 | 67 | |
68 | - rcu_assign_pointer(queue_handler[pf], NULL); | |
68 | + RCU_INIT_POINTER(queue_handler[pf], NULL); | |
69 | 69 | mutex_unlock(&queue_handler_mutex); |
70 | 70 | |
71 | 71 | synchronize_rcu(); |
... | ... | @@ -84,7 +84,7 @@ |
84 | 84 | queue_handler[pf], |
85 | 85 | lockdep_is_held(&queue_handler_mutex) |
86 | 86 | ) == qh) |
87 | - rcu_assign_pointer(queue_handler[pf], NULL); | |
87 | + RCU_INIT_POINTER(queue_handler[pf], NULL); | |
88 | 88 | } |
89 | 89 | mutex_unlock(&queue_handler_mutex); |
90 | 90 |
net/netfilter/nfnetlink.c
... | ... | @@ -59,7 +59,7 @@ |
59 | 59 | nfnl_unlock(); |
60 | 60 | return -EBUSY; |
61 | 61 | } |
62 | - rcu_assign_pointer(subsys_table[n->subsys_id], n); | |
62 | + RCU_INIT_POINTER(subsys_table[n->subsys_id], n); | |
63 | 63 | nfnl_unlock(); |
64 | 64 | |
65 | 65 | return 0; |
... | ... | @@ -210,7 +210,7 @@ |
210 | 210 | if (!nfnl) |
211 | 211 | return -ENOMEM; |
212 | 212 | net->nfnl_stash = nfnl; |
213 | - rcu_assign_pointer(net->nfnl, nfnl); | |
213 | + RCU_INIT_POINTER(net->nfnl, nfnl); | |
214 | 214 | return 0; |
215 | 215 | } |
216 | 216 | |
... | ... | @@ -219,7 +219,7 @@ |
219 | 219 | struct net *net; |
220 | 220 | |
221 | 221 | list_for_each_entry(net, net_exit_list, exit_list) |
222 | - rcu_assign_pointer(net->nfnl, NULL); | |
222 | + RCU_INIT_POINTER(net->nfnl, NULL); | |
223 | 223 | synchronize_net(); |
224 | 224 | list_for_each_entry(net, net_exit_list, exit_list) |
225 | 225 | netlink_kernel_release(net->nfnl_stash); |
net/netlabel/netlabel_domainhash.c
... | ... | @@ -282,7 +282,7 @@ |
282 | 282 | INIT_LIST_HEAD(&hsh_tbl->tbl[iter]); |
283 | 283 | |
284 | 284 | spin_lock(&netlbl_domhsh_lock); |
285 | - rcu_assign_pointer(netlbl_domhsh, hsh_tbl); | |
285 | + RCU_INIT_POINTER(netlbl_domhsh, hsh_tbl); | |
286 | 286 | spin_unlock(&netlbl_domhsh_lock); |
287 | 287 | |
288 | 288 | return 0; |
... | ... | @@ -330,7 +330,7 @@ |
330 | 330 | &rcu_dereference(netlbl_domhsh)->tbl[bkt]); |
331 | 331 | } else { |
332 | 332 | INIT_LIST_HEAD(&entry->list); |
333 | - rcu_assign_pointer(netlbl_domhsh_def, entry); | |
333 | + RCU_INIT_POINTER(netlbl_domhsh_def, entry); | |
334 | 334 | } |
335 | 335 | |
336 | 336 | if (entry->type == NETLBL_NLTYPE_ADDRSELECT) { |
... | ... | @@ -451,7 +451,7 @@ |
451 | 451 | if (entry != rcu_dereference(netlbl_domhsh_def)) |
452 | 452 | list_del_rcu(&entry->list); |
453 | 453 | else |
454 | - rcu_assign_pointer(netlbl_domhsh_def, NULL); | |
454 | + RCU_INIT_POINTER(netlbl_domhsh_def, NULL); | |
455 | 455 | } else |
456 | 456 | ret_val = -ENOENT; |
457 | 457 | spin_unlock(&netlbl_domhsh_lock); |
net/netlabel/netlabel_unlabeled.c
... | ... | @@ -354,7 +354,7 @@ |
354 | 354 | INIT_LIST_HEAD(&iface->list); |
355 | 355 | if (netlbl_unlhsh_rcu_deref(netlbl_unlhsh_def) != NULL) |
356 | 356 | goto add_iface_failure; |
357 | - rcu_assign_pointer(netlbl_unlhsh_def, iface); | |
357 | + RCU_INIT_POINTER(netlbl_unlhsh_def, iface); | |
358 | 358 | } |
359 | 359 | spin_unlock(&netlbl_unlhsh_lock); |
360 | 360 | |
... | ... | @@ -621,7 +621,7 @@ |
621 | 621 | if (iface->ifindex > 0) |
622 | 622 | list_del_rcu(&iface->list); |
623 | 623 | else |
624 | - rcu_assign_pointer(netlbl_unlhsh_def, NULL); | |
624 | + RCU_INIT_POINTER(netlbl_unlhsh_def, NULL); | |
625 | 625 | spin_unlock(&netlbl_unlhsh_lock); |
626 | 626 | |
627 | 627 | call_rcu(&iface->rcu, netlbl_unlhsh_free_iface); |
... | ... | @@ -1449,7 +1449,7 @@ |
1449 | 1449 | |
1450 | 1450 | rcu_read_lock(); |
1451 | 1451 | spin_lock(&netlbl_unlhsh_lock); |
1452 | - rcu_assign_pointer(netlbl_unlhsh, hsh_tbl); | |
1452 | + RCU_INIT_POINTER(netlbl_unlhsh, hsh_tbl); | |
1453 | 1453 | spin_unlock(&netlbl_unlhsh_lock); |
1454 | 1454 | rcu_read_unlock(); |
1455 | 1455 |
net/phonet/af_phonet.c
... | ... | @@ -480,7 +480,7 @@ |
480 | 480 | if (proto_tab[protocol]) |
481 | 481 | err = -EBUSY; |
482 | 482 | else |
483 | - rcu_assign_pointer(proto_tab[protocol], pp); | |
483 | + RCU_INIT_POINTER(proto_tab[protocol], pp); | |
484 | 484 | mutex_unlock(&proto_tab_lock); |
485 | 485 | |
486 | 486 | return err; |
... | ... | @@ -491,7 +491,7 @@ |
491 | 491 | { |
492 | 492 | mutex_lock(&proto_tab_lock); |
493 | 493 | BUG_ON(proto_tab[protocol] != pp); |
494 | - rcu_assign_pointer(proto_tab[protocol], NULL); | |
494 | + RCU_INIT_POINTER(proto_tab[protocol], NULL); | |
495 | 495 | mutex_unlock(&proto_tab_lock); |
496 | 496 | synchronize_rcu(); |
497 | 497 | proto_unregister(pp->prot); |
net/phonet/pn_dev.c
... | ... | @@ -276,7 +276,7 @@ |
276 | 276 | mutex_lock(&pnn->routes.lock); |
277 | 277 | for (i = 0; i < 64; i++) |
278 | 278 | if (dev == pnn->routes.table[i]) { |
279 | - rcu_assign_pointer(pnn->routes.table[i], NULL); | |
279 | + RCU_INIT_POINTER(pnn->routes.table[i], NULL); | |
280 | 280 | set_bit(i, deleted); |
281 | 281 | } |
282 | 282 | mutex_unlock(&pnn->routes.lock); |
... | ... | @@ -390,7 +390,7 @@ |
390 | 390 | daddr = daddr >> 2; |
391 | 391 | mutex_lock(&routes->lock); |
392 | 392 | if (routes->table[daddr] == NULL) { |
393 | - rcu_assign_pointer(routes->table[daddr], dev); | |
393 | + RCU_INIT_POINTER(routes->table[daddr], dev); | |
394 | 394 | dev_hold(dev); |
395 | 395 | err = 0; |
396 | 396 | } |
... | ... | @@ -406,7 +406,7 @@ |
406 | 406 | daddr = daddr >> 2; |
407 | 407 | mutex_lock(&routes->lock); |
408 | 408 | if (dev == routes->table[daddr]) |
409 | - rcu_assign_pointer(routes->table[daddr], NULL); | |
409 | + RCU_INIT_POINTER(routes->table[daddr], NULL); | |
410 | 410 | else |
411 | 411 | dev = NULL; |
412 | 412 | mutex_unlock(&routes->lock); |
net/phonet/socket.c
... | ... | @@ -679,7 +679,7 @@ |
679 | 679 | mutex_lock(&resource_mutex); |
680 | 680 | if (pnres.sk[res] == NULL) { |
681 | 681 | sock_hold(sk); |
682 | - rcu_assign_pointer(pnres.sk[res], sk); | |
682 | + RCU_INIT_POINTER(pnres.sk[res], sk); | |
683 | 683 | ret = 0; |
684 | 684 | } |
685 | 685 | mutex_unlock(&resource_mutex); |
... | ... | @@ -695,7 +695,7 @@ |
695 | 695 | |
696 | 696 | mutex_lock(&resource_mutex); |
697 | 697 | if (pnres.sk[res] == sk) { |
698 | - rcu_assign_pointer(pnres.sk[res], NULL); | |
698 | + RCU_INIT_POINTER(pnres.sk[res], NULL); | |
699 | 699 | ret = 0; |
700 | 700 | } |
701 | 701 | mutex_unlock(&resource_mutex); |
... | ... | @@ -714,7 +714,7 @@ |
714 | 714 | mutex_lock(&resource_mutex); |
715 | 715 | for (res = 0; res < 256; res++) { |
716 | 716 | if (pnres.sk[res] == sk) { |
717 | - rcu_assign_pointer(pnres.sk[res], NULL); | |
717 | + RCU_INIT_POINTER(pnres.sk[res], NULL); | |
718 | 718 | match++; |
719 | 719 | } |
720 | 720 | } |
net/socket.c
... | ... | @@ -2463,7 +2463,7 @@ |
2463 | 2463 | lockdep_is_held(&net_family_lock))) |
2464 | 2464 | err = -EEXIST; |
2465 | 2465 | else { |
2466 | - rcu_assign_pointer(net_families[ops->family], ops); | |
2466 | + RCU_INIT_POINTER(net_families[ops->family], ops); | |
2467 | 2467 | err = 0; |
2468 | 2468 | } |
2469 | 2469 | spin_unlock(&net_family_lock); |
... | ... | @@ -2491,7 +2491,7 @@ |
2491 | 2491 | BUG_ON(family < 0 || family >= NPROTO); |
2492 | 2492 | |
2493 | 2493 | spin_lock(&net_family_lock); |
2494 | - rcu_assign_pointer(net_families[family], NULL); | |
2494 | + RCU_INIT_POINTER(net_families[family], NULL); | |
2495 | 2495 | spin_unlock(&net_family_lock); |
2496 | 2496 | |
2497 | 2497 | synchronize_rcu(); |
net/sunrpc/auth_gss/auth_gss.c
... | ... | @@ -122,7 +122,7 @@ |
122 | 122 | if (!test_bit(RPCAUTH_CRED_NEW, &cred->cr_flags)) |
123 | 123 | return; |
124 | 124 | gss_get_ctx(ctx); |
125 | - rcu_assign_pointer(gss_cred->gc_ctx, ctx); | |
125 | + RCU_INIT_POINTER(gss_cred->gc_ctx, ctx); | |
126 | 126 | set_bit(RPCAUTH_CRED_UPTODATE, &cred->cr_flags); |
127 | 127 | smp_mb__before_clear_bit(); |
128 | 128 | clear_bit(RPCAUTH_CRED_NEW, &cred->cr_flags); |
... | ... | @@ -970,7 +970,7 @@ |
970 | 970 | struct gss_auth *gss_auth = container_of(cred->cr_auth, struct gss_auth, rpc_auth); |
971 | 971 | struct gss_cl_ctx *ctx = gss_cred->gc_ctx; |
972 | 972 | |
973 | - rcu_assign_pointer(gss_cred->gc_ctx, NULL); | |
973 | + RCU_INIT_POINTER(gss_cred->gc_ctx, NULL); | |
974 | 974 | call_rcu(&cred->cr_rcu, gss_free_cred_callback); |
975 | 975 | if (ctx) |
976 | 976 | gss_put_ctx(ctx); |
net/xfrm/xfrm_user.c
... | ... | @@ -2927,7 +2927,7 @@ |
2927 | 2927 | if (nlsk == NULL) |
2928 | 2928 | return -ENOMEM; |
2929 | 2929 | net->xfrm.nlsk_stash = nlsk; /* Don't set to NULL */ |
2930 | - rcu_assign_pointer(net->xfrm.nlsk, nlsk); | |
2930 | + RCU_INIT_POINTER(net->xfrm.nlsk, nlsk); | |
2931 | 2931 | return 0; |
2932 | 2932 | } |
2933 | 2933 | |
... | ... | @@ -2935,7 +2935,7 @@ |
2935 | 2935 | { |
2936 | 2936 | struct net *net; |
2937 | 2937 | list_for_each_entry(net, net_exit_list, exit_list) |
2938 | - rcu_assign_pointer(net->xfrm.nlsk, NULL); | |
2938 | + RCU_INIT_POINTER(net->xfrm.nlsk, NULL); | |
2939 | 2939 | synchronize_net(); |
2940 | 2940 | list_for_each_entry(net, net_exit_list, exit_list) |
2941 | 2941 | netlink_kernel_release(net->xfrm.nlsk_stash); |