diff options
| author | Johannes Berg <[email protected]> | 2025-06-09 18:35:18 +0000 |
|---|---|---|
| committer | Johannes Berg <[email protected]> | 2025-07-09 09:52:35 +0000 |
| commit | 6f9e701c16a733a7d123b9e52101cf56ca5a0a4e (patch) | |
| tree | 693ace85cca72f11e491c71c0a036b79695b3a93 | |
| parent | wifi: mac80211: add mandatory bitrate support for 6 GHz (diff) | |
| download | kernel-6f9e701c16a733a7d123b9e52101cf56ca5a0a4e.tar.gz kernel-6f9e701c16a733a7d123b9e52101cf56ca5a0a4e.zip | |
wifi: mac80211: fix deactivated link CSA
If the link is deactivated and the CSA completes, then that
needs to update the link station's bandwidth (only the AP STA
can exist at this point, no TDLS on inactive links) and set
the CSA to no longer be active. Fix this.
Signed-off-by: Johannes Berg <[email protected]>
Signed-off-by: Miri Korenblit <[email protected]>
Link: https://patch.msgid.link/20250609213231.07f120cf687d.I5a868c501ee73fcc2355d61c2ee06e5f444b350f@changeid
Signed-off-by: Johannes Berg <[email protected]>
| -rw-r--r-- | net/mac80211/mlme.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c index b5fdbdb40101..2c700d12eef6 100644 --- a/net/mac80211/mlme.c +++ b/net/mac80211/mlme.c @@ -2381,9 +2381,26 @@ static void ieee80211_csa_switch_work(struct wiphy *wiphy, * update cfg80211 directly. */ if (!ieee80211_vif_link_active(&sdata->vif, link->link_id)) { + struct link_sta_info *link_sta; + struct sta_info *ap_sta; + link->conf->chanreq = link->csa.chanreq; cfg80211_ch_switch_notify(sdata->dev, &link->csa.chanreq.oper, link->link_id); + link->conf->csa_active = false; + + ap_sta = sta_info_get(sdata, sdata->vif.cfg.ap_addr); + if (WARN_ON(!ap_sta)) + return; + + link_sta = wiphy_dereference(wiphy, + ap_sta->link[link->link_id]); + if (WARN_ON(!link_sta)) + return; + + link_sta->pub->bandwidth = + _ieee80211_sta_cur_vht_bw(link_sta, + &link->csa.chanreq.oper); return; } |
