From: Johannes Berg <johannes.berg@xxxxxxxxx> Since we will want to remove the wdev lock in the future, lock the wiphy here to iterate and for checking the status of the connections. Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx> Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx> --- net/wireless/sme.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/net/wireless/sme.c b/net/wireless/sme.c index 53ba46f85ceb..c271f30b58fa 100644 --- a/net/wireless/sme.c +++ b/net/wireless/sme.c @@ -703,6 +703,7 @@ static bool cfg80211_is_all_idle(void) * as chan dfs state, etc. */ for_each_rdev(rdev) { + wiphy_lock(&rdev->wiphy); list_for_each_entry(wdev, &rdev->wiphy.wdev_list, list) { wdev_lock(wdev); if (wdev->conn || wdev->connected || @@ -710,6 +711,7 @@ static bool cfg80211_is_all_idle(void) is_all_idle = false; wdev_unlock(wdev); } + wiphy_unlock(&rdev->wiphy); } return is_all_idle; -- 2.41.0