[PATCH 2/2] ath10k: make core registering async

Johannes Berg johannes at sipsolutions.net
Mon Jun 23 07:10:59 PDT 2014


On Mon, 2014-06-23 at 14:59 +0200, Michal Kazior wrote:
> >> But does this bump up the module refcount in such a way that an
> >> in-progress rmmod will wait/block until the refcount reaches 0?
> >
> > It should, yes, but you race once you do module_put(), no?
> 
> It's still racy, I agree.
> 
> I don't see how device_release_driver() can be made work synchronously
> at all. It should, however, be perfectly fine if this was an async
> request to release a device/driver, right?

Yeah, but the work struct would have to live somewhere that can't be
unloaded, or can more safely wait for it...

I guess we could also have a list of these in the modules and
synchronize on them in module_exit()?

johannes




More information about the ath10k mailing list