Commit a59d5556 authored by Johannes Berg's avatar Johannes Berg
Browse files

mac80211_hwsim: fix RCU protected chanctx access



We need to RCU protect the chanctx_conf access, so
do that.

Fixes: 585625c9 ("mac80211_hwsim: check TX and STA bandwidth")
Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
Link: https://lore.kernel.org/r/20220505230421.fb8055c081a2.Ic6da3307c77a909bd61a0ea25dc2a4b08fe1b03f@changeid


Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
parent c7e34c1e
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -2202,11 +2202,14 @@ mac80211_hwsim_sta_rc_update(struct ieee80211_hw *hw,
	if (!data->use_chanctx) {
		confbw = data->bw;
	} else {
		struct ieee80211_chanctx_conf *chanctx_conf =
			rcu_dereference(vif->chanctx_conf);
		struct ieee80211_chanctx_conf *chanctx_conf;

		rcu_read_lock();
		chanctx_conf = rcu_dereference(vif->chanctx_conf);

		if (!WARN_ON(!chanctx_conf))
			confbw = chanctx_conf->def.width;
		rcu_read_unlock();
	}

	WARN(bw > hwsim_get_chanwidth(confbw),