Quoting r. Sean Hefty <[EMAIL PROTECTED]>:
> 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
_______________________________________________
openib-general mailing list
[email protected]
http://openib.org/mailman/listinfo/openib-general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to