On 1/29/2024 5:31 PM, Jeff Johnson wrote: > On 1/28/2024 9:28 PM, Aditya Kumar Singh wrote: >> diff --git a/net/mac80211/cfg.c b/net/mac80211/cfg.c >> index 4427259154e2..a1a4f100d128 100644 >> --- a/net/mac80211/cfg.c >> +++ b/net/mac80211/cfg.c >> @@ -3543,13 +3543,24 @@ cfg80211_beacon_dup(struct cfg80211_beacon_data *beacon) >> return new_beacon; >> } >> >> -void ieee80211_csa_finish(struct ieee80211_vif *vif) >> +void ieee80211_csa_finish(struct ieee80211_vif *vif, unsigned int link_id) >> { >> struct ieee80211_sub_if_data *sdata = vif_to_sdata(vif); >> struct ieee80211_local *local = sdata->local; >> + struct ieee80211_link_data *link_data; >> + >> + if (WARN_ON(link_id > IEEE80211_MLD_MAX_NUM_LINKS)) let's try that again, shouldn't the test be > = ?? >> + return; >> >> rcu_read_lock(); >> >> + link_data = rcu_dereference(sdata->link[link_id]); >> + if (WARN_ON(!link_data)) { >> + rcu_read_unlock(); >> + return; >> + } >> + >> + /* TODO: MBSSID with MLO changes */ >> if (vif->mbssid_tx_vif == vif) { >> /* Trigger ieee80211_csa_finish() on the non-transmitting >> * interfaces when channel switch is received on > >