mac80211: rebase ontop of v4.18-rc7
[openwrt/staging/blogic.git] / package / kernel / mac80211 / patches / subsys / 373-mac80211-minstrel-fix-using-short-preamble-CCK-rates.patch
diff --git a/package/kernel/mac80211/patches/subsys/373-mac80211-minstrel-fix-using-short-preamble-CCK-rates.patch b/package/kernel/mac80211/patches/subsys/373-mac80211-minstrel-fix-using-short-preamble-CCK-rates.patch
new file mode 100644 (file)
index 0000000..6478e9e
--- /dev/null
@@ -0,0 +1,33 @@
+From: Felix Fietkau <nbd@nbd.name>
+Date: Sat, 10 Feb 2018 13:43:07 +0100
+Subject: [PATCH] mac80211: minstrel: fix using short preamble CCK rates on
+ HT clients
+
+mi->supported[MINSTREL_CCK_GROUP] needs to be updated
+
+Fixes: 782dda00ab8e ("mac80211: minstrel_ht: move short preamble check out of get_rate")
+Signed-off-by: Felix Fietkau <nbd@nbd.name>
+---
+
+Index: backports-v4.18-rc7/net/mac80211/rc80211_minstrel_ht.c
+===================================================================
+--- backports-v4.18-rc7.orig/net/mac80211/rc80211_minstrel_ht.c
++++ backports-v4.18-rc7/net/mac80211/rc80211_minstrel_ht.c
+@@ -1135,7 +1135,6 @@ minstrel_ht_update_caps(void *priv, stru
+       struct ieee80211_mcs_info *mcs = &sta->ht_cap.mcs;
+       u16 ht_cap = sta->ht_cap.cap;
+       struct ieee80211_sta_vht_cap *vht_cap = &sta->vht_cap;
+-      struct sta_info *sinfo = container_of(sta, struct sta_info, sta);
+       int use_vht;
+       int n_supported = 0;
+       int ack_dur;
+@@ -1267,8 +1266,7 @@ minstrel_ht_update_caps(void *priv, stru
+       if (!n_supported)
+               goto use_legacy;
+-      if (test_sta_flag(sinfo, WLAN_STA_SHORT_PREAMBLE))
+-              mi->cck_supported_short |= mi->cck_supported_short << 4;
++      mi->supported[MINSTREL_CCK_GROUP] |= mi->cck_supported_short << 4;
+       /* create an initial rate table with the lowest supported rates */
+       minstrel_ht_update_stats(mp, mi);