Messages in this thread | | | Date | Wed, 16 May 2012 13:29:24 -0700 | From | Tejun Heo <> | Subject | Re: [PATCH] floppy: convert to delayed work and single-thread wq |
| |
On Wed, May 16, 2012 at 10:24:37PM +0200, Jiri Kosina wrote: > In floppy_grab_irq_and_dma() the point is to drain the workqueue > completely (before the conversion, we were just using > flush_work_sync(&floppy_work) for particular work item), and for that > flush_work() is not sufficient any more. > > So I am really considering going back to driver-specific singlethreaded > workqueue.
Ummm... still confused. flush_work_sync() is fine too. If you have two, two calls to flush_work_sync() are equivalent to flushing the workqueue in effect. You just need to avoid flush_workqueue() because system workqueues may be hosting work items which can run arbitrarily long.
Thanks.
-- tejun
| |