linux/drivers/net/wireless/ath
Felix Fietkau 6d7b97b23e ath5k: fix tx status reporting issues
During normal operation, minstrel was showing suspicious EWMA probabilities
exceeding 100%. It looks like the tx status reporting in ath5k was not
properly clearing the rate index for rates which were never attempted.

This is caused by uninitialized stale data in the on-stack tx status
information, which is reused when more frames are received.

To fix this, rely on ts->ts_final_idx to select the last attempted rate,
instead of checking whether ts->ts_rate is set.

Additionally, the conversion from the driver rate index back to the
mac80211 rate index can be dropped, as the mac80211 tx status will still
have the original rate index which was used to set up the descriptor.

Additionally, one more inaccuracy was fixed - the final rate attempt
count only needs to be increased by one if the transmission attempt was
successful.

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2011-04-12 16:58:59 -04:00
..
ath5k ath5k: fix tx status reporting issues 2011-04-12 16:58:59 -04:00
ath9k ath9k_hw: remove unnecessary parts of the AR9380 SREV check 2011-04-12 16:58:50 -04:00
carl9170 carl9170: Fix tx aggregation problems with some clients 2011-03-29 15:45:14 -04:00
Kconfig ar9170usb: purge obsolete driver 2011-04-07 15:24:37 -04:00
Makefile ar9170usb: purge obsolete driver 2011-04-07 15:24:37 -04:00
ath.h ath9k_hw: add a new register op for read-mask-write 2011-03-30 14:15:19 -04:00
debug.c ath: Add and use ath_printk and ath_<level> 2010-12-07 16:34:39 -05:00
hw.c ath9k_hw: move the cycle counter tracking to ath 2010-10-11 15:04:20 -04:00
key.c ath: Speedup key set/reset ops for HTC driver 2011-03-30 14:15:11 -04:00
main.c ath: Add and use ath_printk and ath_<level> 2010-12-07 16:34:39 -05:00
reg.h ath9k_hw: move the cycle counter tracking to ath 2010-10-11 15:04:20 -04:00
regd.c ath: Add function to check if 4.9GHz channels are allowed 2011-01-28 15:44:26 -05:00
regd.h ath: Add function to check if 4.9GHz channels are allowed 2011-01-28 15:44:26 -05:00
regd_common.h ath: add missing regdomain pair 0x5c mapping 2011-04-07 14:40:14 -04:00