aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2010-06-10 04:21:45 -0400
committerJohn W. Linville <linville@tuxdriver.com>2010-06-14 15:39:28 -0400
commitf955ebb44798e0058c987a0817810d2542e87349 (patch)
treecc31892c229120ca206ea2d19fc0e6c13f0bad47
parent7c3b1dd8f483bf4bcb9776cd9cd3b37dd327d7ea (diff)
mac80211: fix RX aggregation timer
I noticed that when there was _no_ traffic at all on a given aggregation session, it would never time out. This won't happen unless you forced creating a session, but fix it anyway. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r--net/mac80211/agg-rx.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/net/mac80211/agg-rx.c b/net/mac80211/agg-rx.c
index 1c4320b01e3c..aa858a03951c 100644
--- a/net/mac80211/agg-rx.c
+++ b/net/mac80211/agg-rx.c
@@ -274,6 +274,10 @@ void ieee80211_process_addba_request(struct ieee80211_local *local,
274 274
275 /* activate it for RX */ 275 /* activate it for RX */
276 rcu_assign_pointer(sta->ampdu_mlme.tid_rx[tid], tid_agg_rx); 276 rcu_assign_pointer(sta->ampdu_mlme.tid_rx[tid], tid_agg_rx);
277
278 if (timeout)
279 mod_timer(&tid_agg_rx->session_timer, TU_TO_EXP_TIME(timeout));
280
277end: 281end:
278 spin_unlock_bh(&sta->lock); 282 spin_unlock_bh(&sta->lock);
279 283