On 30 January 2015 at 14:04, Johannes Berg <johannes@xxxxxxxxxxxxxxxx> wrote: > On Fri, 2015-01-30 at 14:02 +0100, Michal Kazior wrote: > >> I recall that at least there's one case where using these helpers is >> impossible: drv_config() which can be called while mac80211 is already >> holding iflist_mtx. ath10k needs to iterate over vifs and issue >> blocking commands sometimes so it can't use atomic/rcu versions >> either. > > If you wanted to use it, I wouldn't be averse to adding a locked version > that can only be used inside a few of such callbacks. With appropriate > lockdep warnings that would be safe enough, I think. You'd probably have to add quite a few mutex_lock(iflist_mtx) around drv_*() calls (not directly but somewhere at their call trees) to guarantee driver can use lock-free iterate() version (which doesn't exist yet). This could be tricky. Michał -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html