On Wed, Sep 7, 2011 at 8:05 AM, Felix Fietkau <nbd@xxxxxxxxxxx> wrote: > 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. > > Also fix an endian bug on accessing the control field of the BAR Thanks for the endian fix! [...] > @@ -246,6 +278,8 @@ void ieee80211_tx_status(struct ieee80211_hw *hw, struct sk_buff *skb) > } > > if (!acked && ieee80211_is_back_req(fc)) { > + u16 control; > + > /* > * BAR failed, let's tear down the BA session as a > * last resort as some STAs (Intel 5100 on Windows) The comment should be updated as well. Helmut -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html