On Mon, 2011-02-14 at 15:06 +0100, Felix Fietkau wrote: > On 2011-02-14 1:09 PM, Johannes Berg wrote: > > On Wed, 2011-02-09 at 00:32 +0100, Felix Fietkau wrote: > >> When a driver wants to buffer some frames internally without feeding them > >> back to mac80211, this allows it to still wake up the station > > > > Why would the driver want to do this though? > If a station enters powersave and the AP still has buffered frames for > aggregation, those frames need to stay in the queue, since the driver > controls the block ack window and keeps some state per frame (e.g. > number of software retransmissions). > If ath9k would send those frames back to mac80211, and mac80211 would > drop some of them, then the client's reorder window would get messed up > when the client comes back. This would also make managing frame sequence > numbers more complicated, since the driver would have to skip assigning > sequence numbers for frames where tx_info->flags has the > IEEE80211_TX_INTFL_RETRANSMISSION bit set, but then also look for gaps > caused by expired frames. Ok, that makes sense. In fact, I think iwlwifi will have the same issue since it buffers in hw queues... will have to check that. johannes -- 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