mac80211: disable potentially harmful PS software retry for A-MPDU sessions
Signed-off-by: Felix Fietkau <nbd@nbd.name>
This commit is contained in:
		| @@ -0,0 +1,28 @@ | ||||
| From: Felix Fietkau <nbd@nbd.name> | ||||
| Date: Wed, 22 Feb 2017 16:13:17 +0100 | ||||
| Subject: [PATCH] mac80211: don't handle filtered frames within a BA session | ||||
|  | ||||
| When running a BA session, the driver (or the hardware) already takes | ||||
| care of retransmitting failed frames, since it has to keep the receiver | ||||
| reorder window in sync. | ||||
|  | ||||
| Adding another layer of retransmit around that does not improve | ||||
| anything. In fact, it can only lead to some strong reordering with huge | ||||
| latency. | ||||
|  | ||||
| Cc: stable@vger.kernel.org | ||||
| Signed-off-by: Felix Fietkau <nbd@nbd.name> | ||||
| --- | ||||
|  | ||||
| --- a/net/mac80211/status.c | ||||
| +++ b/net/mac80211/status.c | ||||
| @@ -51,7 +51,8 @@ static void ieee80211_handle_filtered_fr | ||||
|  	struct ieee80211_hdr *hdr = (void *)skb->data; | ||||
|  	int ac; | ||||
|   | ||||
| -	if (info->flags & IEEE80211_TX_CTL_NO_PS_BUFFER) { | ||||
| +	if (info->flags & (IEEE80211_TX_CTL_NO_PS_BUFFER | | ||||
| +			   IEEE80211_TX_CTL_AMPDU)) { | ||||
|  		ieee80211_free_txskb(&local->hw, skb); | ||||
|  		return; | ||||
|  	} | ||||
		Reference in New Issue
	
	Block a user
	 Felix Fietkau
					Felix Fietkau