Message ID | 20200409082925.27481-1-madhuparnabhowmik10@gmail.com |
---|---|
State | Awaiting Upstream |
Delegated to: | David Miller |
Headers | show |
Series | [1/4] net: mac80211: util.c: Fix RCU list usage warnings | expand |
On Thu, 2020-04-09 at 13:59 +0530, madhuparnabhowmik10@gmail.com wrote: > From: Madhuparna Bhowmik <madhuparnabhowmik10@gmail.com> > > ieee80211_add_vht_ie() is called with sdata->wdev.mtx held from > ieee80211_send_assoc(). Add lockdep condition to avoid false positive > warnings. Again, wrong lock! Over the course of the three patches, you've now claimed that any one of * RTNL, * local->iflist_mtx, * local->mtx, and * sdata->wdev.mtx are sufficient to iterate the interface list, but only the first two are really true. johannes
diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c index 16d75da0996a..ef64b3e91ce6 100644 --- a/net/mac80211/mlme.c +++ b/net/mac80211/mlme.c @@ -590,7 +590,8 @@ static void ieee80211_add_vht_ie(struct ieee80211_sub_if_data *sdata, bool disable_mu_mimo = false; struct ieee80211_sub_if_data *other; - list_for_each_entry_rcu(other, &local->interfaces, list) { + list_for_each_entry_rcu(other, &local->interfaces, list, + lockdep_is_held(&sdata->wdev.mtx)) { if (other->vif.mu_mimo_owner) { disable_mu_mimo = true; break;