mac80211: disable potentially harmful PS software retry for A-MPDU sessions
Signed-off-by: Felix Fietkau <nbd@nbd.name>
This commit is contained in:
parent
942ac18c8a
commit
9edff13abd
1 changed files with 28 additions and 0 deletions
|
@ -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;
|
||||
}
|
Loading…
Reference in a new issue