[openib-general] Re: ipoib use of multicast module on trunk causes kernel oops on 2.6.16

Sean Hefty mshefty at ichips.intel.com
Tue May 30 14:21:43 PDT 2006


Michael S. Tsirkin wrote:
> I'm still looking at isolating this failure.  I'd like to understand the new
> code better, however.  What prevents ipoib_mcast_leave and later
> ipoib_mcast_free from being called on an mcast that has an outstanding query?
> 
> We used to have a completion to signal that but it seems to be gone.

The multicast module requires a call to ib_free_multicast() after 
ib_join_multicast() has been called.  It doesn't matter when ib_free_multicast() 
is called, but it is a blocking call.  After ib_free_multicast() returns, the 
user's callback will not be invoked.  Any synchronization issues, such as 
leaving a group while it has an outstanding query, are pushed into the multicast 
module.  This is necessary to serialize join and leave requests from multiple 
users on the same group.

- Sean



More information about the general mailing list