[openib-general] Re: RFC: revert module ref counting patches (was Re: [PATCH] ipoib_flush_paths)
Michael S. Tsirkin
mst at mellanox.co.il
Mon Apr 10 12:41:43 PDT 2006
Quoting r. Sean Hefty <sean.hefty at intel.com>:
> Subject: RE: RFC: revert module ref counting patches (was Re: [PATCH] ipoib_flush_paths)
>
> >In our example its clear that A has to wait for its callback to run to
> >complete.
> >If B and A callbacks are running on the same WQ, this means A
> >must wait for B's callack to complete if it gets placed in in WQ
> >before A callback.
>
> You're assuming a single-threaded work queue. With a multi-threaded work queue,
> A must wait for callbacks to all modules to complete.
By multi-threaded workqueue you mean a per-cpu one?
But all core components use single-threaded workqueues now.
Anyway,I think its a matter of luck whether things get queued in separate CPUs
in parallel, or on the same one serially: you can't solve deadlocks this way.
> Maybe this isn't a big deal, and if we would deadlock using flush, we would
> deadlock using an alternate method.
Exactly, that's what I'm saying.
--
MST
More information about the general
mailing list