1
0
mirror of git://projects.qi-hardware.com/openwrt-xburst.git synced 2024-11-07 12:26:16 +02:00
openwrt-xburst/package/mac80211/patches/560-ath9k_ps_tx_aggr_fix.patch
nbd ef6a8e56be 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
2011-08-01 12:15:22 +00:00

23 lines
675 B
Diff

--- 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;
}