ath9k: fix an aggregation start related race condition
authorFelix Fietkau <nbd@openwrt.org>
Mon, 20 Sep 2010 17:35:28 +0000 (19:35 +0200)
committerGreg Kroah-Hartman <gregkh@suse.de>
Thu, 9 Dec 2010 21:31:59 +0000 (13:31 -0800)
commit7525beb78cccba6fe1b36ef4fc869f3b43e9e546
tree2c111e65576832edc415537fb580710fb6570dfe
parent3b5cf05ab0e0cdd581034033bee0725668bc30f1
ath9k: fix an aggregation start related race condition

commit 231c3a1f0630c07a584905507a1cb7b705a56ab7 upstream.

A new aggregation session start can be issued by mac80211, even when the
cleanup of the previous session has not completed yet. Since the data structure
for the session is not recreated, this could corrupt the block ack window
and lock up the aggregation session. Fix this by delaying the new session
until the old one has been cleaned up.

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/net/wireless/ath/ath9k/ath9k.h
drivers/net/wireless/ath/ath9k/main.c
drivers/net/wireless/ath/ath9k/xmit.c