aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2011-01-15 08:30:15 -0500
committerJohn W. Linville <linville@tuxdriver.com>2011-01-19 11:36:11 -0500
commitf0b8220c64242e19f41ad1b4eec3225d53715cbe (patch)
treefc777520c6ce3dbccdca84091338adae7a00c2a3
parent21f28e6f0061568b2347aa7517249fc034f949b5 (diff)
ath9k: fix excessive BAR sending when a frame exceeds its retry limit
Because the sendbar variable was not reset to zero, the stack would send Block ACK requests for all subframes following the one that failed, which could mess up the receiver side block ack window. Signed-off-by: Felix Fietkau <nbd@openwrt.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r--drivers/net/wireless/ath/ath9k/xmit.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/wireless/ath/ath9k/xmit.c b/drivers/net/wireless/ath/ath9k/xmit.c
index fffd13d204b5..ad569e152d78 100644
--- a/drivers/net/wireless/ath/ath9k/xmit.c
+++ b/drivers/net/wireless/ath/ath9k/xmit.c
@@ -429,7 +429,7 @@ static void ath_tx_complete_aggr(struct ath_softc *sc, struct ath_txq *txq,
429 429
430 ath_tx_count_frames(sc, bf, ts, txok, &nframes, &nbad); 430 ath_tx_count_frames(sc, bf, ts, txok, &nframes, &nbad);
431 while (bf) { 431 while (bf) {
432 txfail = txpending = 0; 432 txfail = txpending = sendbar = 0;
433 bf_next = bf->bf_next; 433 bf_next = bf->bf_next;
434 434
435 skb = bf->bf_mpdu; 435 skb = bf->bf_mpdu;