ath9k: Make sure to zero status.tx_time before reporting TX status
authorToke Høiland-Jørgensen <toke@redhat.com>
Fri, 15 Feb 2019 16:48:55 +0000 (17:48 +0100)
committerKalle Valo <kvalo@codeaurora.org>
Tue, 26 Feb 2019 13:07:28 +0000 (15:07 +0200)
Since ath9k reports airtime usage directly using the
ieee80211_report_airtime() callback, it shouldn't also report it using the
tx_time in status. Make sure the field is zeroed before TX status is
reported to avoid spurious airtime being accounted by bits being left over
from earlier uses of the cb.

Fixes: 89cea7493a34 ("ath9k: Switch to mac80211 TXQ scheduling and airtime APIs")
Signed-off-by: Toke Høiland-Jørgensen <toke@redhat.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/ath/ath9k/xmit.c

index 06e0c5a..773d428 100644 (file)
@@ -2552,6 +2552,9 @@ static void ath_tx_rc_status(struct ath_softc *sc, struct ath_buf *bf,
        }
 
        tx_info->status.rates[tx_rateindex].count = ts->ts_longretry + 1;
+
+       /* we report airtime in ath_tx_count_airtime(), don't report twice */
+       tx_info->status.tx_time = 0;
 }
 
 static void ath_tx_processq(struct ath_softc *sc, struct ath_txq *txq)