summaryrefslogtreecommitdiffstats
path: root/net/mac80211/scan.c
diff options
context:
space:
mode:
authorEliad Peller <eliad@wizery.com>2012-07-29 15:25:10 +0200
committerJohannes Berg <johannes.berg@intel.com>2012-07-30 09:14:36 +0200
commitba846a502c6b3c0ff047861c891fd1afeed6e435 (patch)
treee71626a91e87c8ca45fe087c4eb61cb157def739 /net/mac80211/scan.c
parentMerge remote-tracking branch 'wireless/master' into mac80211 (diff)
downloadlinux-ba846a502c6b3c0ff047861c891fd1afeed6e435.tar.xz
linux-ba846a502c6b3c0ff047861c891fd1afeed6e435.zip
mac80211: don't clear sched_scan_sdata on sched scan stop request
ieee80211_request_sched_scan_stop() cleared local->sched_scan_sdata. However, sched_scan_sdata should be cleared only after the driver calls ieee80211_sched_scan_stopped() (like with normal hw scan). Clearing sched_scan_sdata too early caused ieee80211_sched_scan_stopped_work to exit prematurely without properly cleaning all the sched scan resources and without calling cfg80211_sched_scan_stopped (so userspace wasn't notified about sched scan completion). Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211/scan.c')
-rw-r--r--net/mac80211/scan.c1
1 files changed, 0 insertions, 1 deletions
diff --git a/net/mac80211/scan.c b/net/mac80211/scan.c
index df36280ed78f..839dd9737989 100644
--- a/net/mac80211/scan.c
+++ b/net/mac80211/scan.c
@@ -984,7 +984,6 @@ int ieee80211_request_sched_scan_stop(struct ieee80211_sub_if_data *sdata)
kfree(local->sched_scan_ies.ie[i]);
drv_sched_scan_stop(local, sdata);
- rcu_assign_pointer(local->sched_scan_sdata, NULL);
}
out:
mutex_unlock(&local->mtx);