mac80211_hwsim: Fix bcn_en_iter to use atomic iteration
'mac80211_hwsim: Fix tracking of beaconing for multi-vif' introduced an iteration of active interfaces into the bss_info_changed handler. However, it used a wrong type of iteration and could result in a dead lock since iflist_mtx can already be held. Fix this by using the atomic version of the iteration function. Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
parent
3f718fd840
commit
cdb1b8057a
@ -1238,7 +1238,7 @@ static void mac80211_hwsim_bss_info_changed(struct ieee80211_hw *hw,
|
|||||||
HRTIMER_MODE_REL);
|
HRTIMER_MODE_REL);
|
||||||
} else if (!info->enable_beacon) {
|
} else if (!info->enable_beacon) {
|
||||||
unsigned int count = 0;
|
unsigned int count = 0;
|
||||||
ieee80211_iterate_active_interfaces(
|
ieee80211_iterate_active_interfaces_atomic(
|
||||||
data->hw, IEEE80211_IFACE_ITER_NORMAL,
|
data->hw, IEEE80211_IFACE_ITER_NORMAL,
|
||||||
mac80211_hwsim_bcn_en_iter, &count);
|
mac80211_hwsim_bcn_en_iter, &count);
|
||||||
wiphy_debug(hw->wiphy, " beaconing vifs remaining: %u",
|
wiphy_debug(hw->wiphy, " beaconing vifs remaining: %u",
|
||||||
|
Loading…
Reference in New Issue
Block a user