[PATCH v2 2/7] ath10k: implement chanctx API

Michal Kazior michal.kazior at tieto.com
Fri Jan 30 05:22:16 PST 2015


On 30 January 2015 at 14:04, Johannes Berg <johannes at sipsolutions.net> 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ł



More information about the ath10k mailing list