[openib-general] IPoIB broadcast MC group membership

Fabian Tillier ftillier at silverstorm.com
Tue Feb 28 13:36:45 PST 2006


On 28 Feb 2006 14:35:34 -0500, Hal Rosenstock <halr at voltaire.com> wrote:
> On Tue, 2006-02-21 at 01:10, Fabian Tillier wrote:
> > The Windows IPoIB follows a sequence like:
> >
> > if( GET broadcast group == NO_ERROR )
> >     if( SET join broadcast group != NO_ERROR ) repeat GET;
> > else
> >     if( SET create broadcast group != NO_ERROR ) repeat GET;
>
> Another approach that could be used is to subscribe for MC group
> creation and deletion traps rather than a timed poll.

That wouldn't really help, as you could still have a race between
getting the creation notification and the join succeeding wherein the
group could be deleted.

> BTW, is there some timer before the loop is repeated ?

No, and you really don't want one.  If the GET succeeded, then you
want to join ASAP.

Note that I got the above loop wrong - if the join fails, the code
tries to create the group, not repeat the GET.  For that step in the
loop, you again don't want to wait, as you want the group created
ASAP.

The problem was one of never exiting the loop, which your suggestion
of using the ERR_REQ_INSUFFICIENT_COMPONENTS should help with.

- Fab



More information about the general mailing list