aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2011-01-15 14:30:15 +0100
committerJohn W. Linville <linville@tuxdriver.com>2011-01-19 11:36:11 -0500
commitf0b8220c64242e19f41ad1b4eec3225d53715cbe (patch)
treefc777520c6ce3dbccdca84091338adae7a00c2a3 /drivers/net/wireless/ath
parent21f28e6f0061568b2347aa7517249fc034f949b5 (diff)
downloadkernel_samsung_smdk4412-f0b8220c64242e19f41ad1b4eec3225d53715cbe.zip
kernel_samsung_smdk4412-f0b8220c64242e19f41ad1b4eec3225d53715cbe.tar.gz
kernel_samsung_smdk4412-f0b8220c64242e19f41ad1b4eec3225d53715cbe.tar.bz2
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>
Diffstat (limited to 'drivers/net/wireless/ath')
-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 fffd13d..ad569e1 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,
ath_tx_count_frames(sc, bf, ts, txok, &nframes, &nbad);
while (bf) {
- txfail = txpending = 0;
+ txfail = txpending = sendbar = 0;
bf_next = bf->bf_next;
skb = bf->bf_mpdu;