ath9k: fix powersave response handling for BA session packets
authorFelix Fietkau <nbd@openwrt.org>
Sun, 29 Sep 2013 11:06:31 +0000 (13:06 +0200)
committerJohn W. Linville <linville@tuxdriver.com>
Mon, 30 Sep 2013 20:19:29 +0000 (16:19 -0400)
commitf69727fd78fa761dc49ee3091c432a8c6ab81292
treef8152764e1ed0e61f8560d188822ae774a33431e
parent453b0c3f6910672f79da354077af728d92f95c5b
ath9k: fix powersave response handling for BA session packets

When a packet is passed from mac80211 to the driver with the
IEEE80211_TX_CTL_PS_RESPONSE flag set, it bypasses the normal driver
internal queueing and goes directly to the UAPSD queue.

When that happens, packets that are part of a BlockAck session still
need to be tracked as such inside the driver, otherwise it will create
discrepancies in the receiver BA reorder window, causing traffic stalls.
This only happens in AP mode with powersave-enabled clients.

This patch fixes the regression introduced in the commit
"ath9k: use software queues for un-aggregated data packets"

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/ath/ath9k/xmit.c