Browse Source

ath9k: reset buffer stale flag in ath_tx_get_tid_subframe

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>
Felix Fietkau 12 years ago
parent
commit
563299d82f
1 changed files with 2 additions and 0 deletions
  1. 2 0
      drivers/net/wireless/ath/ath9k/xmit.c

+ 2 - 0
drivers/net/wireless/ath/ath9k/xmit.c

@@ -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);