[ofa-general] Re: infiniband-diags/saquery.c:print_multicast_member_record question

Ira Weiny weiny2 at llnl.gov
Tue Jun 10 11:11:31 PDT 2008


On Tue, 10 Jun 2008 10:23:24 -0700
Hal Rosenstock <hrosenstock at xsigo.com> wrote:

> On Tue, 2008-06-10 at 09:05 -0700, Ira Weiny wrote:
> > Yea, that comment does not make sense.
> > 
> > I am searching the node records for the node which has the port defined in the
> > member record.  The interface ID is simply the port guid, is it not?
> > 
> > 	uint64_t gid_interface_id = cl_ntoh64( p_mcmr->port_gid.unicast.interface_id );
> > 
> > I guess the comments should read.
> > 
> >    /* go through the node records searching for a port guid which matches
> >     * this port gid interface id.
> >     * This gives us a node description to print.
> >     */
> > 
> > Does that make more sense?
> 
> The makes more sense but I don't think that the code does what's
> intended.

Why do you say that?  Have you found some configuration in which this does not
work?

>From the spec pg 905:

   "Note: If a channel adapter or router has multiple ports on the same subnet,
   there will be multiple NodeRecords available for that node from SA, one for
   each possible PortGUID value of NodeInfo for that node on that subnet."

So each NodeRecord should have a unique port GUID in it.

Or do you think the GID interface ID will not always equal the GUID?  I thought
I read that somewhere but perhaps I am wrong.  I don't find it right now.  :-/

Ira

> 
> -- Hal
> 
> > Ira
> > 
> > On Tue, 10 Jun 2008 07:46:26 -0700
> > Hal Rosenstock <hrosenstock at xsigo.com> wrote:
> > 
> > > Ira,
> > > 
> > > In saquery.c:print_multicast_member_record, there is the following:
> > > 
> > >         /* go through and find the node description for this node GID */
> > >         for (i = 0; i < result.result_cnt; i++) {
> > >                 node_record = osmv_get_query_node_rec(result.p_result_madw, i);
> > >                 if (cl_ntoh64(node_record->node_info.port_guid) == gid_interface_id)
> > >                         break;
> > >         }
> > > 
> > > I have a question about the intention here:
> > > 
> > > The comment mentions the node description for this node GID. Is that
> > > what is meant or is the intention to get the node description
> > > corresponding to the port GUID for each MCMember record ?
> > > 
> > > -- Hal
> > > 
> > > 
> 



More information about the general mailing list