Re: [PATCH] mac80211: make ieee80211_send_bar available for drivers
From: Johannes Berg <johannes@sipsolutions.net>
Date: 2011-08-29 13:26:51
On Sat, 2011-08-20 at 20:26 +0200, Felix Fietkau wrote:
On 2011-08-20 3:53 PM, Felix Fietkau wrote:quoted
To properly maintain the peer's block ack window, the driver needs to be able to control the new starting sequence number that is sent along with the BlockAckReq frame. Signed-off-by: Felix Fietkau<redacted> --- turns out that I will need this change in mac80211 anyway to properly handle a few corner cases wrt. aggregation and off-channel activity. When ath9k goes off-channel it may need to drop some packets that are still part of the BAW, but at that point in time it would be a very bad idea to try to send BAR frames. Instead I want to send the BAR after switching back to the primary channel as a kind of barrier before sending more packets.Johannes, do you think it would make the driver API better if instead of exporting this function, I add an ieee80211_bar_get function (similar to ieee80211_nullfunc_get or ieee80211_probereq_get) to avoid concerns over the missing _ni variant or the weird callchain from the driver back into the tx function?
Probably not -- especially since that might be tricky wrt. rate control? I don't really know. Seems that the call back from the driver into itself is possible with mesh too -- I guess we need to decide whether that is something we do or not. johannes