summaryrefslogtreecommitdiffstats
path: root/net/mac80211/main.c
diff options
context:
space:
mode:
authorDavid Spinadel <david.spinadel@intel.com>2013-12-08 20:48:57 +0100
committerJohannes Berg <johannes.berg@intel.com>2013-12-16 13:47:26 +0100
commitd43c6b6e6f2fcaebf198c499716e5e24d878fdd2 (patch)
treeef8cc16a17e5b0101d0fc138eb28e55ebd3363c9 /net/mac80211/main.c
parentmac80211: make ieee80211_assign_beacon() static (diff)
downloadlinux-d43c6b6e6f2fcaebf198c499716e5e24d878fdd2.tar.xz
linux-d43c6b6e6f2fcaebf198c499716e5e24d878fdd2.zip
mac80211: reschedule sched scan after HW restart
Keep the sched scan req when starting sched scan, and reschedule it in case of HW restart during sched scan. The upper layer don't have to know about the restart. Signed-off-by: David Spinadel <david.spinadel@intel.com> Reviewed-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211/main.c')
-rw-r--r--net/mac80211/main.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/net/mac80211/main.c b/net/mac80211/main.c
index fa34cd2344b9..2bd5b552b2f6 100644
--- a/net/mac80211/main.c
+++ b/net/mac80211/main.c
@@ -250,12 +250,8 @@ static void ieee80211_restart_work(struct work_struct *work)
/* wait for scan work complete */
flush_workqueue(local->workqueue);
- mutex_lock(&local->mtx);
- WARN(test_bit(SCAN_HW_SCANNING, &local->scanning) ||
- rcu_dereference_protected(local->sched_scan_sdata,
- lockdep_is_held(&local->mtx)),
- "%s called with hardware scan in progress\n", __func__);
- mutex_unlock(&local->mtx);
+ WARN(test_bit(SCAN_HW_SCANNING, &local->scanning),
+ "%s called with hardware scan in progress\n", __func__);
rtnl_lock();
ieee80211_scan_cancel(local);