[openwrt/openwrt] mac80211: allow bigger A-MSDU sizes in VHT, even if HT is limited

LEDE Commits lede-commits at lists.infradead.org
Wed Sep 16 12:49:41 EDT 2020


nbd pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/673062fc56c05ec613f416b0da7325be46e65a29

commit 673062fc56c05ec613f416b0da7325be46e65a29
Author: Felix Fietkau <nbd at nbd.name>
AuthorDate: Wed Sep 16 18:47:52 2020 +0200

    mac80211: allow bigger A-MSDU sizes in VHT, even if HT is limited
    
    Improves tx throughput when connecting to some APs (e.g. Asus RT-AC88U)
    
    Signed-off-by: Felix Fietkau <nbd at nbd.name>
---
 ...low-bigger-A-MSDU-sizes-in-VHT-even-if-HT.patch | 26 ++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/package/kernel/mac80211/patches/subsys/330-mac80211-allow-bigger-A-MSDU-sizes-in-VHT-even-if-HT.patch b/package/kernel/mac80211/patches/subsys/330-mac80211-allow-bigger-A-MSDU-sizes-in-VHT-even-if-HT.patch
new file mode 100644
index 0000000000..b67030d135
--- /dev/null
+++ b/package/kernel/mac80211/patches/subsys/330-mac80211-allow-bigger-A-MSDU-sizes-in-VHT-even-if-HT.patch
@@ -0,0 +1,26 @@
+From: Felix Fietkau <nbd at nbd.name>
+Date: Wed, 16 Sep 2020 18:43:46 +0200
+Subject: [PATCH] mac80211: allow bigger A-MSDU sizes in VHT, even if HT is
+ limited
+
+Some APs (e.g. Asus RT-AC88U) have been observed to report an HT MSDU size
+limit of 3839 and a VHT limit of 7991. These APs can handle bigger frames
+than 3839 bytes just fine, so we should remove the VHT limit based on the
+HT capabilities. This improves tx throughput.
+
+Signed-off-by: Felix Fietkau <nbd at nbd.name>
+---
+
+--- a/net/mac80211/vht.c
++++ b/net/mac80211/vht.c
+@@ -315,10 +315,6 @@ ieee80211_vht_cap_ie_to_sta_vht_cap(stru
+ 
+ 	sta->sta.bandwidth = ieee80211_sta_cur_vht_bw(sta);
+ 
+-	/* If HT IE reported 3839 bytes only, stay with that size. */
+-	if (sta->sta.max_amsdu_len == IEEE80211_MAX_MPDU_LEN_HT_3839)
+-		return;
+-
+ 	switch (vht_cap->cap & IEEE80211_VHT_CAP_MAX_MPDU_MASK) {
+ 	case IEEE80211_VHT_CAP_MAX_MPDU_LENGTH_11454:
+ 		sta->sta.max_amsdu_len = IEEE80211_MAX_MPDU_LEN_VHT_11454;



More information about the lede-commits mailing list