schedule_work and speedtch.c
baldrick at free.fr
Sun Apr 17 14:15:25 EDT 2005
> OK so how about the patch below? It changes the heavy_init stuff to use
> a workqueue. The subdrivers can also use it for status polling, it's a
> matter of replacing schedule_work() by queue_work() and
> flush_scheduled_work() by flash_workqueue().
Actually, I was thinking of one workqueue for the whole of usbatm, not
one per device. Isn't one per device overkill? On the other hand, it
avoids the problem of multiple devices being initialized serially,
rather than in parallel. Also, with workqueues, we lose the possibility
of quickly quitting heavy_init on disconnect by sending a signal...
More information about the Usbatm