ath9k: fix initial sequence number after starting an ampdu session
authorFelix Fietkau <nbd@openwrt.org>
Tue, 11 Jan 2011 00:05:48 +0000 (17:05 -0700)
committerJohn W. Linville <linville@tuxdriver.com>
Wed, 19 Jan 2011 16:36:07 +0000 (11:36 -0500)
txtid->seq_start may not always be up to date, when there is HT non-AMPDU
traffic just before starting an AMPDU session. Relying on txtid->seq_next
is better, since it is also used to generate the sequence numbers for
all QoS data frames.

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/ath/ath9k/xmit.c

index 1adfebc..6ddba4b 100644 (file)
@@ -856,7 +856,7 @@ int ath_tx_aggr_start(struct ath_softc *sc, struct ieee80211_sta *sta,
 
        txtid->state |= AGGR_ADDBA_PROGRESS;
        txtid->paused = true;
-       *ssn = txtid->seq_start;
+       *ssn = txtid->seq_start = txtid->seq_next;
 
        return 0;
 }