mac80211: fix scan_sdata assignment
authorJohannes Berg <johannes.berg@intel.com>
Wed, 18 Jul 2012 10:42:58 +0000 (12:42 +0200)
committerJohannes Berg <johannes.berg@intel.com>
Tue, 24 Jul 2012 14:54:11 +0000 (16:54 +0200)
We need to use RCU to assign scan_sdata.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/scan.c

index 169da0742c817507e09a0119f1d1105077784231..7644181cb6b48ad4595586d9e230e34fbb3f73ea 100644 (file)
@@ -304,7 +304,7 @@ static void __ieee80211_scan_completed(struct ieee80211_hw *hw, bool aborted,
        if (local->scan_req != local->int_scan_req)
                cfg80211_scan_done(local->scan_req, aborted);
        local->scan_req = NULL;
-       local->scan_sdata = NULL;
+       rcu_assign_pointer(local->scan_sdata, NULL);
 
        local->scanning = 0;
        local->scan_channel = NULL;