ath9k: reset buffer stale flag in ath_tx_get_tid_subframe
authorFelix Fietkau <nbd@openwrt.org>
Tue, 13 Aug 2013 10:33:30 +0000 (12:33 +0200)
committerJohn W. Linville <linville@tuxdriver.com>
Thu, 15 Aug 2013 20:07:59 +0000 (16:07 -0400)
If that flag stays set for a buffer that already ran through the tx path
once, it might cause issues in tx completion processing. Better clear it
early to ensure that this does not happen

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 cb06c1c..7223e30 100644 (file)
@@ -888,6 +888,8 @@ ath_tx_get_tid_subframe(struct ath_softc *sc, struct ath_txq *txq,
                bf = fi->bf;
                if (!fi->bf)
                        bf = ath_tx_setup_buffer(sc, txq, tid, skb);
+               else
+                       bf->bf_state.stale = false;
 
                if (!bf) {
                        __skb_unlink(skb, *q);