cfg80211: regulatory: use RCU_INIT_POINTER
authorMonam Agarwal <monamagarwal123@gmail.com>
Sun, 23 Mar 2014 19:23:40 +0000 (00:53 +0530)
committerJohannes Berg <johannes.berg@intel.com>
Wed, 9 Apr 2014 08:55:30 +0000 (10:55 +0200)
rcu_assign_pointer() ensures that the initialization of a structure is
carried out before storing a pointer to that structure. However, in the
case that NULL is assigned there's no structure to initialize so using
RCU_INIT_POINTER instead is safe and more efficient.

Signed-off-by: Monam Agarwal <monamagarwal123@gmail.com>
[rewrite commit log]
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/wireless/reg.c

index f59aaac586f8cf10905135324c3913646910a662..e0a746d19061e36dc8de8158a2eb41f5fc4d3bd0 100644 (file)
@@ -2594,7 +2594,7 @@ void wiphy_regulatory_deregister(struct wiphy *wiphy)
                reg_num_devs_support_basehint--;
 
        rcu_free_regdom(get_wiphy_regdom(wiphy));
-       rcu_assign_pointer(wiphy->regd, NULL);
+       RCU_INIT_POINTER(wiphy->regd, NULL);
 
        if (lr)
                request_wiphy = wiphy_idx_to_wiphy(lr->wiphy_idx);