On Wed, 23 Apr 2025 14:53:53 +0200, Johannes Berg wrote: > > --- a/drivers/net/wireless/virtual/mac80211_hwsim.c > > +++ b/drivers/net/wireless/virtual/mac80211_hwsim.c > > @@ -1226,6 +1226,11 @@ static void mac80211_hwsim_set_tsf(struct ieee80211_hw *hw, > > { > > struct mac80211_hwsim_data *data = hw->priv; > > u64 now = mac80211_hwsim_get_tsf(hw, vif); > > + struct ieee80211_bss_conf *conf = link_conf_dereference_protected(vif, > > + data->link_data[0].link_id); > > + > > + if (conf && !conf->enable_beacon) > > + return; > > /* MLD not supported here */ > > u32 bcn_int = data->link_data[0].beacon_int; > > u64 delta = abs(tsf - now); > > Please keep kernel coding style - the line break there is awful (but > with "conf = ..." on a line by itself it can be just one line), and you > shouldn't have code before variable declarations. like this? diff --git a/drivers/net/wireless/virtual/mac80211_hwsim.c b/drivers/net/wireless/virtual/mac80211_hwsim.c index cf3e976471c6..6ca5d9d0fe53 100644 --- a/drivers/net/wireless/virtual/mac80211_hwsim.c +++ b/drivers/net/wireless/virtual/mac80211_hwsim.c @@ -1229,6 +1229,11 @@ static void mac80211_hwsim_set_tsf(struct ieee80211_hw *hw, /* MLD not supported here */ u32 bcn_int = data->link_data[0].beacon_int; u64 delta = abs(tsf - now); + struct ieee80211_bss_conf *conf; + + conf = link_conf_dereference_protected(vif, data->link_data[0].link_id); + if (conf && !conf->enable_beacon) + return; /* adjust after beaconing with new timestamp at old TBTT */ if (tsf > now) { > > The comment should probably also move because it's relevant for your new > [0] as well. I don't understand what you mean. Edward