mac80211: retry sending failed BAR frames later instead of tearing down aggr
authorFelix Fietkau <nbd@openwrt.org>
Sun, 28 Aug 2011 19:11:01 +0000 (21:11 +0200)
committerJohn W. Linville <linville@tuxdriver.com>
Tue, 13 Sep 2011 19:42:30 +0000 (15:42 -0400)
commitf0425beda4d404a6e751439b562100b902ba9c98
tree5a8966c3172557e80fa0a4903ade8a76e5d21415
parent765b07e46725287ceb1be648b6cb5988fbb585f2
mac80211: retry sending failed BAR frames later instead of tearing down aggr

Unfortunately failed BAR tx attempts happen more frequently than I
expected, and the resulting aggregation teardowns cause performance
issues, as the aggregation session does not always get re-established
properly.
Instead of tearing down the entire aggr session, we can simply store the
SSN of the last failed BAR tx attempt, wait for the first successful
tx status event, and then send another BAR with the same SSN.

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Cc: Helmut Schaa <helmut.schaa@googlemail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
net/mac80211/sta_info.h
net/mac80211/status.c