aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/util.c
diff options
context:
space:
mode:
authorJohannes Berg <johannes@sipsolutions.net>2008-05-15 06:55:25 -0400
committerJohn W. Linville <linville@tuxdriver.com>2008-05-21 21:48:08 -0400
commitc4680470a34a4f39af3d0a5c40f70befd8701908 (patch)
treeb965ffa0226244e80f8482b5e5b4500f8175274a /net/mac80211/util.c
parent189a2b5942d62bd18e1e01772c4c784253f5dd16 (diff)
mac80211: fix bugs in queue handling functions
Commit 55c308c1315bc7267dbb88011c208fd743cdce31 ("mac80211: QoS related cleanups") introduced another bug, the queue handling functions that operate on all queues now only operated on the first queues, not the A-MPDU queues as expected. This patch fixes this. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/util.c')
-rw-r--r--net/mac80211/util.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/net/mac80211/util.c b/net/mac80211/util.c
index 24a465c4df09..9cd07e1031af 100644
--- a/net/mac80211/util.c
+++ b/net/mac80211/util.c
@@ -355,7 +355,7 @@ void ieee80211_start_queues(struct ieee80211_hw *hw)
355 struct ieee80211_local *local = hw_to_local(hw); 355 struct ieee80211_local *local = hw_to_local(hw);
356 int i; 356 int i;
357 357
358 for (i = 0; i < local->hw.queues; i++) 358 for (i = 0; i < hw->queues + hw->ampdu_queues; i++)
359 clear_bit(IEEE80211_LINK_STATE_XOFF, &local->state[i]); 359 clear_bit(IEEE80211_LINK_STATE_XOFF, &local->state[i]);
360 if (!ieee80211_qdisc_installed(local->mdev)) 360 if (!ieee80211_qdisc_installed(local->mdev))
361 netif_start_queue(local->mdev); 361 netif_start_queue(local->mdev);
@@ -366,7 +366,7 @@ void ieee80211_stop_queues(struct ieee80211_hw *hw)
366{ 366{
367 int i; 367 int i;
368 368
369 for (i = 0; i < hw->queues; i++) 369 for (i = 0; i < hw->queues + hw->ampdu_queues; i++)
370 ieee80211_stop_queue(hw, i); 370 ieee80211_stop_queue(hw, i);
371} 371}
372EXPORT_SYMBOL(ieee80211_stop_queues); 372EXPORT_SYMBOL(ieee80211_stop_queues);
@@ -375,7 +375,7 @@ void ieee80211_wake_queues(struct ieee80211_hw *hw)
375{ 375{
376 int i; 376 int i;
377 377
378 for (i = 0; i < hw->queues; i++) 378 for (i = 0; i < hw->queues + hw->ampdu_queues; i++)
379 ieee80211_wake_queue(hw, i); 379 ieee80211_wake_queue(hw, i);
380} 380}
381EXPORT_SYMBOL(ieee80211_wake_queues); 381EXPORT_SYMBOL(ieee80211_wake_queues);