diff options
author | Johannes Berg <johannes@sipsolutions.net> | 2008-09-10 18:01:48 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2008-09-15 16:48:20 -0400 |
commit | 7c95069522d02ff144cd421be6618dce619caf7e (patch) | |
tree | 927c6b8c535cfc0933033850d85a5ae350713f69 /net/mac80211/mlme.c | |
parent | a1678f84bff9b20807f7f6a45ebfb56a0c02b353 (diff) |
mac80211: dont set REQ_RUN when scan finishes
The timer restart is done wrongly, we shouldn't set the REQ_RUN
bit when the scan has finished if it hadn't been set before the
scan started. If the timer fires during the scan, it will set
REQ_RUN and then we can run the work for it, if it didn't fire
then we shouldn't run its work either.
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/mlme.c')
-rw-r--r-- | net/mac80211/mlme.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c index 809fb9160899..ef73f8953724 100644 --- a/net/mac80211/mlme.c +++ b/net/mac80211/mlme.c | |||
@@ -2598,7 +2598,8 @@ static void ieee80211_restart_sta_timer(struct ieee80211_sub_if_data *sdata) | |||
2598 | { | 2598 | { |
2599 | if (sdata->vif.type == IEEE80211_IF_TYPE_STA || | 2599 | if (sdata->vif.type == IEEE80211_IF_TYPE_STA || |
2600 | ieee80211_vif_is_mesh(&sdata->vif)) | 2600 | ieee80211_vif_is_mesh(&sdata->vif)) |
2601 | ieee80211_sta_timer((unsigned long)sdata); | 2601 | queue_work(sdata->local->hw.workqueue, |
2602 | &sdata->u.sta.work); | ||
2602 | } | 2603 | } |
2603 | 2604 | ||
2604 | void ieee80211_mlme_notify_scan_completed(struct ieee80211_local *local) | 2605 | void ieee80211_mlme_notify_scan_completed(struct ieee80211_local *local) |