]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
wifi: mac80211: don't unreserve never reserved chanctx
authorJohannes Berg <johannes.berg@intel.com>
Wed, 9 Jul 2025 20:37:53 +0000 (23:37 +0300)
committerJohannes Berg <johannes.berg@intel.com>
Tue, 15 Jul 2025 09:00:38 +0000 (11:00 +0200)
If a link has no chanctx, indicating it is an inactive link
that we tracked CSA for, then attempting to unreserve the
reserved chanctx will throw a warning and fail, since there
never was a reserved chanctx. Skip the unreserve.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Link: https://patch.msgid.link/20250709233537.022192f4b1ae.Ib58156ac13e674a9f4d714735be0764a244c0aae@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/mlme.c

index 53f8b9bd2bd48516b5a2ddff3dafc82f20874f9b..7a8643f0892903db3d37fb09b20b96e187a2be49 100644 (file)
@@ -2561,7 +2561,8 @@ ieee80211_sta_abort_chanswitch(struct ieee80211_link_data *link)
        if (!local->ops->abort_channel_switch)
                return;
 
-       ieee80211_link_unreserve_chanctx(link);
+       if (rcu_access_pointer(link->conf->chanctx_conf))
+               ieee80211_link_unreserve_chanctx(link);
 
        ieee80211_vif_unblock_queues_csa(sdata);