1
0
mirror of git://projects.qi-hardware.com/openwrt-xburst.git synced 2024-12-24 05:11:46 +02:00

ath9k: prevent the aggregation code from sending packets to sleeping stations - should fix some latency issues

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@27861 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
nbd 2011-08-01 12:15:22 +00:00
parent 99a41c0ace
commit ef6a8e56be

View File

@ -0,0 +1,22 @@
--- a/drivers/net/wireless/ath/ath9k/xmit.c
+++ b/drivers/net/wireless/ath/ath9k/xmit.c
@@ -550,7 +550,8 @@ static void ath_tx_complete_aggr(struct
if (clear_filter)
tid->ac->clear_ps_filter = true;
list_splice(&bf_pending, &tid->buf_q);
- ath_tx_queue_tid(txq, tid);
+ if (!an->sleeping)
+ ath_tx_queue_tid(txq, tid);
spin_unlock_bh(&txq->axq_lock);
}
@@ -1410,7 +1411,8 @@ static void ath_tx_send_ampdu(struct ath
*/
TX_STAT_INC(txctl->txq->axq_qnum, a_queued_sw);
list_add_tail(&bf->list, &tid->buf_q);
- ath_tx_queue_tid(txctl->txq, tid);
+ if (!txctl->an || !txctl->an->sleeping)
+ ath_tx_queue_tid(txctl->txq, tid);
return;
}