aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath/ath9k/xmit.c
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2011-01-10 17:05:49 -0700
committerJohn W. Linville <linville@tuxdriver.com>2011-01-19 11:36:08 -0500
commit2ed72229d60fc6f3ac9941b75d1e1522b08a975a (patch)
tree26c7e4c7573c460ca829c2dd627d53d0b2f1b5b3 /drivers/net/wireless/ath/ath9k/xmit.c
parentath9k: fix initial sequence number after starting an ampdu session (diff)
downloadlinux-dev-2ed72229d60fc6f3ac9941b75d1e1522b08a975a.tar.xz
linux-dev-2ed72229d60fc6f3ac9941b75d1e1522b08a975a.zip
ath9k: reinitialize block ack window data when starting aggregation
There might be some old stale data left, which could confuse tracking of pending tx frames. Signed-off-by: Felix Fietkau <nbd@openwrt.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath/ath9k/xmit.c')
-rw-r--r--drivers/net/wireless/ath/ath9k/xmit.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath/ath9k/xmit.c b/drivers/net/wireless/ath/ath9k/xmit.c
index 6ddba4b361fd..ab4f7b4f789f 100644
--- a/drivers/net/wireless/ath/ath9k/xmit.c
+++ b/drivers/net/wireless/ath/ath9k/xmit.c
@@ -858,6 +858,9 @@ int ath_tx_aggr_start(struct ath_softc *sc, struct ieee80211_sta *sta,
txtid->paused = true;
*ssn = txtid->seq_start = txtid->seq_next;
+ memset(txtid->tx_buf, 0, sizeof(txtid->tx_buf));
+ txtid->baw_head = txtid->baw_tail = 0;
+
return 0;
}