[openib-general] OpenSM: Some more osm_sa_path_record.c questions

Hal Rosenstock halr at voltaire.com
Wed Jan 19 08:22:48 PST 2005


Hi Eitan,

I have a few more questions about osm_sa_path_record.c based on a quick
scan when I was looking at the NO RECORDS status issue with response to
SA GetTable:

1. Why are non default PKey and SL invalid when they are requested in
the component mask of the SA request for PathRecord ? (This seems
inconsistent with the ability to set the PKeyTable and SL2VLMapping
tables via osmsh or other means). In fact, if the component mask is not
set for these and a GetTable is issued, wouldn't these additional path
records come back ? Just wondering if there is another reason here I
don't understand.

  /*
    Check a few easy disqualifying cases up front before getting
    into the endpoints.
  */

  if( comp_mask & IB_PR_COMPMASK_PKEY )
  {
    if( p_pr->pkey != IB_DEFAULT_PKEY )
    {
      sa_status = IB_SA_MAD_STATUS_NO_RECORDS;
      goto Exit;
    }
  }

  if( comp_mask & IB_PR_COMPMASK_SL )
  {
    if( p_pr->sl != OSM_DEFAULT_SL )
    {
      sa_status = IB_SA_MAD_STATUS_NO_RECORDS;
      goto Exit;
    }

2. Are component masks SGID and SLID, and DGID and DLID mutually
exclusive ?

  if( p_sa_mad->comp_mask & IB_PR_COMPMASK_SGID )
  {
  else
  {
    if( p_sa_mad->comp_mask & IB_PR_COMPMASK_SLID )

Similarly for DGID and DLID

If SLID is specified with SGID (similarly for DLID and DGID) in the
component mask, shouldn't the LID be validated to make sure it is valid
for that GID before a response is returned ?

Thanks.

-- Hal




More information about the general mailing list