aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/work.c
diff options
context:
space:
mode:
authorStanislaw Gruszka <sgruszka@redhat.com>2012-03-28 10:01:19 -0400
committerJohn W. Linville <linville@tuxdriver.com>2012-04-13 14:31:49 -0400
commit133d40f9a22bdfd2617a446f1e3209537c5415ec (patch)
treef1a1cf510935348bede001983773a879df94fce5 /net/mac80211/work.c
parentf277683477c7bdff8236e731cf882b3ef89dde0d (diff)
mac80211: do not scan and monitor connection in parallel
Before we send probes in connection monitoring we check if scan is not pending. But we do that check without locking. Fix that and also do not start scan if connection monitoring is in progress. Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/work.c')
-rw-r--r--net/mac80211/work.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/net/mac80211/work.c b/net/mac80211/work.c
index c6e230efa04..1f74af33901 100644
--- a/net/mac80211/work.c
+++ b/net/mac80211/work.c
@@ -226,13 +226,8 @@ static void ieee80211_work_work(struct work_struct *work)
226 run_again(local, jiffies + HZ/2); 226 run_again(local, jiffies + HZ/2);
227 } 227 }
228 228
229 if (list_empty(&local->work_list) && local->scan_req &&
230 !local->scanning)
231 ieee80211_queue_delayed_work(&local->hw,
232 &local->scan_work,
233 round_jiffies_relative(0));
234
235 ieee80211_recalc_idle(local); 229 ieee80211_recalc_idle(local);
230 ieee80211_run_deferred_scan(local);
236 231
237 mutex_unlock(&local->mtx); 232 mutex_unlock(&local->mtx);
238 233