diff options
Diffstat (limited to 'net/mac80211')
-rw-r--r-- | net/mac80211/agg-rx.c | 4 | ||||
-rw-r--r-- | net/mac80211/cfg.c | 8 | ||||
-rw-r--r-- | net/mac80211/ibss.c | 6 | ||||
-rw-r--r-- | net/mac80211/iface.c | 6 | ||||
-rw-r--r-- | net/mac80211/mesh_pathtbl.c | 4 | ||||
-rw-r--r-- | net/mac80211/sta_info.c | 8 |
6 files changed, 18 insertions, 18 deletions
diff --git a/net/mac80211/agg-rx.c b/net/mac80211/agg-rx.c index e6cab51dceb0..7c366dfe8da9 100644 --- a/net/mac80211/agg-rx.c +++ b/net/mac80211/agg-rx.c | |||
@@ -69,7 +69,7 @@ void ___ieee80211_stop_rx_ba_session(struct sta_info *sta, u16 tid, | |||
69 | if (!tid_rx) | 69 | if (!tid_rx) |
70 | return; | 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 | #ifdef CONFIG_MAC80211_HT_DEBUG | 74 | #ifdef CONFIG_MAC80211_HT_DEBUG |
75 | printk(KERN_DEBUG "Rx BA session stop requested for %pM tid %u\n", | 75 | printk(KERN_DEBUG "Rx BA session stop requested for %pM tid %u\n", |
@@ -325,7 +325,7 @@ void ieee80211_process_addba_request(struct ieee80211_local *local, | |||
325 | status = WLAN_STATUS_SUCCESS; | 325 | status = WLAN_STATUS_SUCCESS; |
326 | 326 | ||
327 | /* activate it for RX */ | 327 | /* activate it for RX */ |
328 | rcu_assign_pointer(sta->ampdu_mlme.tid_rx[tid], tid_agg_rx); | 328 | RCU_INIT_POINTER(sta->ampdu_mlme.tid_rx[tid], tid_agg_rx); |
329 | 329 | ||
330 | if (timeout) | 330 | if (timeout) |
331 | mod_timer(&tid_agg_rx->session_timer, TU_TO_EXP_TIME(timeout)); | 331 | mod_timer(&tid_agg_rx->session_timer, TU_TO_EXP_TIME(timeout)); |
diff --git a/net/mac80211/cfg.c b/net/mac80211/cfg.c index 8fef3cddbc4f..9b1a95e1f56a 100644 --- a/net/mac80211/cfg.c +++ b/net/mac80211/cfg.c | |||
@@ -62,7 +62,7 @@ static int ieee80211_change_iface(struct wiphy *wiphy, | |||
62 | 62 | ||
63 | if (type == NL80211_IFTYPE_AP_VLAN && | 63 | if (type == NL80211_IFTYPE_AP_VLAN && |
64 | params && params->use_4addr == 0) | 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 | else if (type == NL80211_IFTYPE_STATION && | 66 | else if (type == NL80211_IFTYPE_STATION && |
67 | params && params->use_4addr >= 0) | 67 | params && params->use_4addr >= 0) |
68 | sdata->u.mgd.use_4addr = params->use_4addr; | 68 | sdata->u.mgd.use_4addr = params->use_4addr; |
@@ -556,7 +556,7 @@ static int ieee80211_config_beacon(struct ieee80211_sub_if_data *sdata, | |||
556 | 556 | ||
557 | sdata->vif.bss_conf.dtim_period = new->dtim_period; | 557 | sdata->vif.bss_conf.dtim_period = new->dtim_period; |
558 | 558 | ||
559 | rcu_assign_pointer(sdata->u.ap.beacon, new); | 559 | RCU_INIT_POINTER(sdata->u.ap.beacon, new); |
560 | 560 | ||
561 | synchronize_rcu(); | 561 | synchronize_rcu(); |
562 | 562 | ||
@@ -611,7 +611,7 @@ static int ieee80211_del_beacon(struct wiphy *wiphy, struct net_device *dev) | |||
611 | if (!old) | 611 | if (!old) |
612 | return -ENOENT; | 612 | return -ENOENT; |
613 | 613 | ||
614 | rcu_assign_pointer(sdata->u.ap.beacon, NULL); | 614 | RCU_INIT_POINTER(sdata->u.ap.beacon, NULL); |
615 | synchronize_rcu(); | 615 | synchronize_rcu(); |
616 | kfree(old); | 616 | kfree(old); |
617 | 617 | ||
@@ -877,7 +877,7 @@ static int ieee80211_change_station(struct wiphy *wiphy, | |||
877 | return -EBUSY; | 877 | return -EBUSY; |
878 | } | 878 | } |
879 | 879 | ||
880 | rcu_assign_pointer(vlansdata->u.vlan.sta, sta); | 880 | RCU_INIT_POINTER(vlansdata->u.vlan.sta, sta); |
881 | } | 881 | } |
882 | 882 | ||
883 | sta->sdata = vlansdata; | 883 | sta->sdata = vlansdata; |
diff --git a/net/mac80211/ibss.c b/net/mac80211/ibss.c index 7809895df8b0..41f16dd1a2b0 100644 --- a/net/mac80211/ibss.c +++ b/net/mac80211/ibss.c | |||
@@ -84,7 +84,7 @@ static void __ieee80211_sta_join_ibss(struct ieee80211_sub_if_data *sdata, | |||
84 | drv_reset_tsf(local, sdata); | 84 | drv_reset_tsf(local, sdata); |
85 | 85 | ||
86 | skb = ifibss->skb; | 86 | skb = ifibss->skb; |
87 | rcu_assign_pointer(ifibss->presp, NULL); | 87 | RCU_INIT_POINTER(ifibss->presp, NULL); |
88 | synchronize_rcu(); | 88 | synchronize_rcu(); |
89 | skb->data = skb->head; | 89 | skb->data = skb->head; |
90 | skb->len = 0; | 90 | skb->len = 0; |
@@ -184,7 +184,7 @@ static void __ieee80211_sta_join_ibss(struct ieee80211_sub_if_data *sdata, | |||
184 | *pos++ = 0; /* U-APSD no in use */ | 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 | sdata->vif.bss_conf.beacon_int = beacon_int; | 189 | sdata->vif.bss_conf.beacon_int = beacon_int; |
190 | sdata->vif.bss_conf.basic_rates = basic_rates; | 190 | sdata->vif.bss_conf.basic_rates = basic_rates; |
@@ -995,7 +995,7 @@ int ieee80211_ibss_leave(struct ieee80211_sub_if_data *sdata) | |||
995 | kfree(sdata->u.ibss.ie); | 995 | kfree(sdata->u.ibss.ie); |
996 | skb = rcu_dereference_protected(sdata->u.ibss.presp, | 996 | skb = rcu_dereference_protected(sdata->u.ibss.presp, |
997 | lockdep_is_held(&sdata->u.ibss.mtx)); | 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 | sdata->vif.bss_conf.ibss_joined = false; | 999 | sdata->vif.bss_conf.ibss_joined = false; |
1000 | ieee80211_bss_info_change_notify(sdata, BSS_CHANGED_BEACON_ENABLED | | 1000 | ieee80211_bss_info_change_notify(sdata, BSS_CHANGED_BEACON_ENABLED | |
1001 | BSS_CHANGED_IBSS); | 1001 | BSS_CHANGED_IBSS); |
diff --git a/net/mac80211/iface.c b/net/mac80211/iface.c index 4116a7542b6b..f4350262663f 100644 --- a/net/mac80211/iface.c +++ b/net/mac80211/iface.c | |||
@@ -456,7 +456,7 @@ static void ieee80211_do_stop(struct ieee80211_sub_if_data *sdata, | |||
456 | BSS_CHANGED_BEACON_ENABLED); | 456 | BSS_CHANGED_BEACON_ENABLED); |
457 | 457 | ||
458 | /* remove beacon */ | 458 | /* remove beacon */ |
459 | rcu_assign_pointer(sdata->u.ap.beacon, NULL); | 459 | RCU_INIT_POINTER(sdata->u.ap.beacon, NULL); |
460 | synchronize_rcu(); | 460 | synchronize_rcu(); |
461 | kfree(old_beacon); | 461 | kfree(old_beacon); |
462 | 462 | ||
@@ -643,7 +643,7 @@ static const struct net_device_ops ieee80211_dataif_ops = { | |||
643 | .ndo_stop = ieee80211_stop, | 643 | .ndo_stop = ieee80211_stop, |
644 | .ndo_uninit = ieee80211_teardown_sdata, | 644 | .ndo_uninit = ieee80211_teardown_sdata, |
645 | .ndo_start_xmit = ieee80211_subif_start_xmit, | 645 | .ndo_start_xmit = ieee80211_subif_start_xmit, |
646 | .ndo_set_multicast_list = ieee80211_set_multicast_list, | 646 | .ndo_set_rx_mode = ieee80211_set_multicast_list, |
647 | .ndo_change_mtu = ieee80211_change_mtu, | 647 | .ndo_change_mtu = ieee80211_change_mtu, |
648 | .ndo_set_mac_address = ieee80211_change_mac, | 648 | .ndo_set_mac_address = ieee80211_change_mac, |
649 | .ndo_select_queue = ieee80211_netdev_select_queue, | 649 | .ndo_select_queue = ieee80211_netdev_select_queue, |
@@ -687,7 +687,7 @@ static const struct net_device_ops ieee80211_monitorif_ops = { | |||
687 | .ndo_stop = ieee80211_stop, | 687 | .ndo_stop = ieee80211_stop, |
688 | .ndo_uninit = ieee80211_teardown_sdata, | 688 | .ndo_uninit = ieee80211_teardown_sdata, |
689 | .ndo_start_xmit = ieee80211_monitor_start_xmit, | 689 | .ndo_start_xmit = ieee80211_monitor_start_xmit, |
690 | .ndo_set_multicast_list = ieee80211_set_multicast_list, | 690 | .ndo_set_rx_mode = ieee80211_set_multicast_list, |
691 | .ndo_change_mtu = ieee80211_change_mtu, | 691 | .ndo_change_mtu = ieee80211_change_mtu, |
692 | .ndo_set_mac_address = eth_mac_addr, | 692 | .ndo_set_mac_address = eth_mac_addr, |
693 | .ndo_select_queue = ieee80211_monitor_select_queue, | 693 | .ndo_select_queue = ieee80211_monitor_select_queue, |
diff --git a/net/mac80211/mesh_pathtbl.c b/net/mac80211/mesh_pathtbl.c index 332b5ff1e885..7f54c5042235 100644 --- a/net/mac80211/mesh_pathtbl.c +++ b/net/mac80211/mesh_pathtbl.c | |||
@@ -1168,6 +1168,6 @@ void mesh_path_expire(struct ieee80211_sub_if_data *sdata) | |||
1168 | void mesh_pathtbl_unregister(void) | 1168 | void mesh_pathtbl_unregister(void) |
1169 | { | 1169 | { |
1170 | /* no need for locking during exit path */ | 1170 | /* no need for locking during exit path */ |
1171 | mesh_table_free(rcu_dereference_raw(mesh_paths), true); | 1171 | mesh_table_free(rcu_dereference_protected(mesh_paths, 1), true); |
1172 | mesh_table_free(rcu_dereference_raw(mpp_paths), true); | 1172 | mesh_table_free(rcu_dereference_protected(mpp_paths, 1), true); |
1173 | } | 1173 | } |
diff --git a/net/mac80211/sta_info.c b/net/mac80211/sta_info.c index c52e58c0a979..0a7e0fed3251 100644 --- a/net/mac80211/sta_info.c +++ b/net/mac80211/sta_info.c | |||
@@ -72,7 +72,7 @@ static int sta_info_hash_del(struct ieee80211_local *local, | |||
72 | if (!s) | 72 | if (!s) |
73 | return -ENOENT; | 73 | return -ENOENT; |
74 | if (s == sta) { | 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 | s->hnext); | 76 | s->hnext); |
77 | return 0; | 77 | return 0; |
78 | } | 78 | } |
@@ -82,7 +82,7 @@ static int sta_info_hash_del(struct ieee80211_local *local, | |||
82 | s = rcu_dereference_protected(s->hnext, | 82 | s = rcu_dereference_protected(s->hnext, |
83 | lockdep_is_held(&local->sta_lock)); | 83 | lockdep_is_held(&local->sta_lock)); |
84 | if (rcu_access_pointer(s->hnext)) { | 84 | if (rcu_access_pointer(s->hnext)) { |
85 | rcu_assign_pointer(s->hnext, sta->hnext); | 85 | RCU_INIT_POINTER(s->hnext, sta->hnext); |
86 | return 0; | 86 | return 0; |
87 | } | 87 | } |
88 | 88 | ||
@@ -231,7 +231,7 @@ static void sta_info_hash_add(struct ieee80211_local *local, | |||
231 | struct sta_info *sta) | 231 | struct sta_info *sta) |
232 | { | 232 | { |
233 | sta->hnext = local->sta_hash[STA_HASH(sta->sta.addr)]; | 233 | sta->hnext = local->sta_hash[STA_HASH(sta->sta.addr)]; |
234 | rcu_assign_pointer(local->sta_hash[STA_HASH(sta->sta.addr)], sta); | 234 | RCU_INIT_POINTER(local->sta_hash[STA_HASH(sta->sta.addr)], sta); |
235 | } | 235 | } |
236 | 236 | ||
237 | static void sta_unblock(struct work_struct *wk) | 237 | static void sta_unblock(struct work_struct *wk) |
@@ -799,7 +799,7 @@ static int __must_check __sta_info_destroy(struct sta_info *sta) | |||
799 | local->sta_generation++; | 799 | local->sta_generation++; |
800 | 800 | ||
801 | if (sdata->vif.type == NL80211_IFTYPE_AP_VLAN) | 801 | if (sdata->vif.type == NL80211_IFTYPE_AP_VLAN) |
802 | rcu_assign_pointer(sdata->u.vlan.sta, NULL); | 802 | RCU_INIT_POINTER(sdata->u.vlan.sta, NULL); |
803 | 803 | ||
804 | if (sta->uploaded) { | 804 | if (sta->uploaded) { |
805 | if (sdata->vif.type == NL80211_IFTYPE_AP_VLAN) | 805 | if (sdata->vif.type == NL80211_IFTYPE_AP_VLAN) |