linux/drivers/net/wireless
Björn Smedman ebd022873a ath9k: A-MPDU rate control info fix
This patch fixes the following problems with the rate control feedback
generated by ath9k for A-MPDU frames:

1. Rate control feedback is carried on the first frame of an aggregate
that is either ACKed, or has execeeded the software retry count and is
considered failed. However, ath9k would incorrectly assume the aggregate
had the length 1 if one of these conditions did not apply to the first
frame of the aggregate, but instead a later frame. This fix therefor
copies the bf_nframes field of the buffer in the same manner as the rates
field of the tx status.

2. Sometimes the ampdu_len and ampdu_ack_len fields of the tx status was
left uninitialized eventhough the IEEE80211_TX_STAT_AMPDU flag was set.
This is now avoid by setting flag and fields in the same place.

3. Even if a frame has been selected for aggregation by mac80211 and
marked with the IEEE80211_TX_CTL_AMPDU flag it can sometimes happen that
ath9k transmits the frame without aggregation. In these cases the
ampdu_ack_len field could be incorrectly computed because the nbad
parameter to ath_tx_rc_status was incorrect.

Cc: <stable@kernel.org>
Signed-off-by: Björn Smedman <bjorn.smedman@venatech.se>
Acked-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-10-11 15:04:24 -04:00
..
ath ath9k: A-MPDU rate control info fix 2010-10-11 15:04:24 -04:00
b43 b43: N-PHY: don't duplicate setting channel in shared memory 2010-10-06 16:30:41 -04:00
b43legacy
hostap Hostap: Fix "'ret' set but not used" warning message from GCC in hostap 2010-08-24 16:28:20 -04:00
ipw2x00 ipw2200: check for allocation failures 2010-10-05 13:35:29 -04:00
iwlwifi iwlagn: add temperature offset calib for 6000g2 2010-10-07 15:53:58 -07:00
iwmc3200wifi cfg80211/mac80211: allow per-station GTKs 2010-10-06 16:30:40 -04:00
libertas cfg80211/mac80211: allow per-station GTKs 2010-10-06 16:30:40 -04:00
libertas_tf
orinoco orinoco: Fix walking past the end of the buffer 2010-08-25 14:33:17 -04:00
p54 p54usb: add five more USBIDs 2010-10-05 13:35:25 -04:00
prism54
rt2x00 rt2x00: Fix tx status handling in rt2800pci 2010-10-11 15:04:22 -04:00
rtl818x Revert "rtl8180: use NAPI for bottom-half processing" 2010-10-07 11:31:56 -04:00
wl12xx wl1251: move to it's own directory 2010-10-11 15:04:23 -04:00
wl1251 wl1251: move to it's own directory 2010-10-11 15:04:23 -04:00
zd1211rw
adm8211.c
adm8211.h
airo_cs.c
airo.c airo: remove "basic_rate" module option 2010-09-24 15:54:29 -04:00
airo.h
at76c50x-usb.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 2010-08-24 16:35:40 -04:00
at76c50x-usb.h
atmel_cs.c
atmel_pci.c
atmel.c
atmel.h
Kconfig wl1251: move to it's own directory 2010-10-11 15:04:23 -04:00
mac80211_hwsim.c mac80211: add p2p device type support 2010-09-16 15:46:07 -04:00
Makefile wl1251: move to it's own directory 2010-10-11 15:04:23 -04:00
mwl8k.c
ray_cs.c ray_cs: make data const 2010-09-07 13:54:32 -04:00
ray_cs.h
rayctl.h
rndis_wlan.c cfg80211/mac80211: allow per-station GTKs 2010-10-06 16:30:40 -04:00
wl3501_cs.c
wl3501.h
zd1201.c
zd1201.h