mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-06 19:08:57 +09:00
UPSTREAM: mac80211_hwsim: fix RCU protected chanctx access
We need to RCU protect the chanctx_conf access, so do that. Bug: 254441685 Fixes:585625c955("mac80211_hwsim: check TX and STA bandwidth") Signed-off-by: Johannes Berg <johannes.berg@intel.com> Link: https://lore.kernel.org/r/20220505230421.fb8055c081a2.Ic6da3307c77a909bd61a0ea25dc2a4b08fe1b03f@changeid Signed-off-by: Johannes Berg <johannes.berg@intel.com> (cherry picked from commita59d55568d) Signed-off-by: Lee Jones <joneslee@google.com> Change-Id: If3cd770740bd9f691bfd2e9baabe40297001a7b3
This commit is contained in:
committed by
Treehugger Robot
parent
3f46cd62c8
commit
3aa6f98fa1
@@ -2163,11 +2163,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),
|
||||
|
||||
Reference in New Issue
Block a user