summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKalle Valo <kalle.valo@iki.fi>2009-04-19 07:47:19 +0200
committerJohn W. Linville <linville@tuxdriver.com>2009-04-20 22:36:26 +0200
commitad935687dbe7307f5abd9e3f610a965a287324a9 (patch)
treeafa794d3da8c2b9dc388ee4903b93a5c041ca3fa
parentnl80211: Make nl80211_send_mlme_event() atomic (diff)
downloadlinux-ad935687dbe7307f5abd9e3f610a965a287324a9.tar.xz
linux-ad935687dbe7307f5abd9e3f610a965a287324a9.zip
mac80211: fix beacon loss detection after scan
Currently beacon loss detection triggers after a scan. A probe request is sent and a message like this is printed to the log: wlan0: beacon loss from AP 00:12:17:e7:98:de - sending probe request But in fact there is no beacon loss, the beacons are just not received because of the ongoing scan. Fix it by updating last_beacon after the scan has finished. Reported-by: Jaswinder Singh Rajput <jaswinder@kernel.org> Signed-off-by: Kalle Valo <kalle.valo@iki.fi> Acked-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r--net/mac80211/mlme.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c
index 1619e0cd26e2..ccfc21aa0b61 100644
--- a/net/mac80211/mlme.c
+++ b/net/mac80211/mlme.c
@@ -1913,9 +1913,17 @@ static void ieee80211_sta_work(struct work_struct *work)
static void ieee80211_restart_sta_timer(struct ieee80211_sub_if_data *sdata)
{
- if (sdata->vif.type == NL80211_IFTYPE_STATION)
+ if (sdata->vif.type == NL80211_IFTYPE_STATION) {
+ /*
+ * Need to update last_beacon to avoid beacon loss
+ * test to trigger.
+ */
+ sdata->u.mgd.last_beacon = jiffies;
+
+
queue_work(sdata->local->hw.workqueue,
&sdata->u.mgd.work);
+ }
}
/* interface setup */