Quoting r. Sean Hefty <[EMAIL PROTECTED]>: > Subject: Re: RFC: revert module ref counting patches (was Re: [PATCH] > ipoib_flush_paths) > > Michael S. Tsirkin wrote: > >Alternatively, we can go back to the original idea of adding API for > >flushing > >WQs to ib_mad, ib_sa and ib_addr modules and calling that at module > >cleanup. > > I've thought about this more, and it leads to very subtle dependencies > between modules.
No, its simple: A uses C -> A does flush C at unload. B uses C -> B does flush C at unload. > For example, suppose modules A and B both call into > module C, with module C performing callbacks into A and B. For module A to > unload, it is now dependent on what module B does in its callback. This is always the case when both callbacks run form the same workqueue. > Interactions between A and C should be limited to A and C to avoid > potential deadlock conditions that could occur between unrelated modules. I don't see how this adds dependencies that we don't already have. Witness the recent ib_cma/sa deadlock - without flushes. -- 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
