blob: 31e8a281af6a0b02cac449f834621304c1af37bb [file] [log] [blame]
developer617abbd2024-04-23 14:50:01 +08001From cd9eddae9afaece218189e1d3ccaffe256b3ccc8 Mon Sep 17 00:00:00 2001
2From: "Allen.Ye" <allen.ye@mediatek.com>
3Date: Fri, 14 Apr 2023 05:05:17 +0800
4Subject: [PATCH 17/61] mtk: mac80211: update max_bssid_indicator based on real
5 BSS numbers
6
7Fix max_bssid_indicator get empty value due to wrong pointer.
8
9CR-Id: WCNCR00259302
10Change-Id: I2a9bcd96e9432569a9968ba9e519c55ebe13cdfe
11---
12 net/mac80211/cfg.c | 5 +++--
13 1 file changed, 3 insertions(+), 2 deletions(-)
14
15diff --git a/net/mac80211/cfg.c b/net/mac80211/cfg.c
16index 3f4c129..cb91223 100644
17--- a/net/mac80211/cfg.c
18+++ b/net/mac80211/cfg.c
19@@ -1167,9 +1167,11 @@ ieee80211_assign_beacon(struct ieee80211_sub_if_data *sdata,
20 /* copy in optional mbssid_ies */
21 if (mbssid) {
22 u8 *pos = new->tail + new->tail_len;
23+ u8 *bssid_indicator;
24
25 new->mbssid_ies = (void *)pos;
26 pos += struct_size(new->mbssid_ies, elem, mbssid->cnt);
27+ bssid_indicator = pos + 2;
28 pos += ieee80211_copy_mbssid_beacon(pos, new->mbssid_ies,
29 mbssid);
30 if (rnr) {
31@@ -1178,8 +1180,7 @@ ieee80211_assign_beacon(struct ieee80211_sub_if_data *sdata,
32 ieee80211_copy_rnr_beacon(pos, new->rnr_ies, rnr);
33 }
34 /* update bssid_indicator */
35- link_conf->bssid_indicator =
36- ilog2(__roundup_pow_of_two(mbssid->cnt + 1));
37+ sdata->vif.bss_conf.bssid_indicator = *(bssid_indicator);
38 }
39
40 if (csa) {
41--
422.39.2
43