> > @@ -542,7 +545,11 @@ static void leave_handler(int status, st
> > {
> > struct mcast_group *group = context;
> >
> > - mcast_work_handler(&group->work);
> > + if (status && (group->retries > 0)) {
> > + send_leave(group, group->leave_state);
I didn't catch this in my earlier response, but we should call
mcast_work_handler() if send_leave() fails to make sure that we reset the group
state back to idle and process any queued joins.
The rest of the changes look okay to me.
- Sean
(Sorry if this breaks threading.)
_______________________________________________
general mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general
To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general