summaryrefslogtreecommitdiffstats
path: root/net/mac80211/work.c
diff options
context:
space:
mode:
authorStanislaw Gruszka <sgruszka@redhat.com>2012-03-28 16:01:19 +0200
committerJohn W. Linville <linville@tuxdriver.com>2012-04-13 14:31:49 -0400
commit133d40f9a22bdfd2617a446f1e3209537c5415ec (patch)
treef1a1cf510935348bede001983773a879df94fce5 /net/mac80211/work.c
parentf277683477c7bdff8236e731cf882b3ef89dde0d (diff)
downloadop-kernel-dev-133d40f9a22bdfd2617a446f1e3209537c5415ec.zip
op-kernel-dev-133d40f9a22bdfd2617a446f1e3209537c5415ec.tar.gz
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 c6e230e..1f74af3 100644
--- a/net/mac80211/work.c
+++ b/net/mac80211/work.c
@@ -226,13 +226,8 @@ static void ieee80211_work_work(struct work_struct *work)
run_again(local, jiffies + HZ/2);
}
- if (list_empty(&local->work_list) && local->scan_req &&
- !local->scanning)
- ieee80211_queue_delayed_work(&local->hw,
- &local->scan_work,
- round_jiffies_relative(0));
-
ieee80211_recalc_idle(local);
+ ieee80211_run_deferred_scan(local);
mutex_unlock(&local->mtx);
OpenPOWER on IntegriCloud