[openib-general] Re: [PATCH] opensm: observe PartitionEnforcementCap of zero

Hal Rosenstock halr at voltaire.com
Thu Mar 30 17:52:59 PST 2006


On Thu, 2006-03-30 at 11:26, Sasha Khapyorsky wrote:
> Hello Hal,
> 
> On 06:41 Thu 30 Mar     , Hal Rosenstock wrote:
> > On Wed, 2006-03-29 at 18:54, Rolf Manderscheid wrote:
> > > Hi Hal,
> > > 
> > > opensm attempts to set pkey table entries on external switch ports
> > > even if the switch declares a PartitionEnforcementCap of zero.  The
> > > consequence is ERR 4108.
> > 
> > I presume this is with the trunk version, right ?
> > 
> > > The decision to set the block is based on the size of the
> > > pkeys->blocks vector, which is initialized to one.  There is a
> > > comment that claims there must be a pre-allocated block in said vector
> > > "for the sake of empty table test", but I can't see why it's
> > > necessary.  Is this comment wrong or am I missing something?
> > > 
> > > The vector size grows, if necessary, when processing the response from
> > > a SubnGet(PKeyTable).  The query happens during a sweep after
> > > obtaining the portinfo, and the query code is careful to observe the
> > > partition cap.  All this means that the vector size can still be used
> > > to decide whether to do the set provided the vector size starts out at
> > > zero.  So, the patch below just initializes the vector to size zero
> > > and removes the code that inserts the pre-allocated block.
> > 
> > This appears like it would get past the ERR 4108 but wouldn't OpenSM
> > then insert the block several lines down in
> > osm_port.c::osm_physp_set_pkey_tbl where it calls osm_pkey_tbl_set ?
> 
> For me Rolf's patch looks fine. I don't see any good reason for pkey
> dummy table preallocation (probably historical reasons?).
> 
> > Also, is PortInfo:PartitionEnforcementInbound/Outbound set properly (0)
> > for these ports which don't support partition enforcement ? (That might
> > be another issue).
> 
> Partititon manager will try to update PortInfo in this case too. I don't
> know could it hurt anything or not, but it is obviously unnecessary
> action. There is the patch.
> 
> Sasha.
> 
> 
> Check Partition Enfocement capabilities before switch external ports'
> pkey tables update and partiton enforcement.
> 
> Signed-off-by: Sasha Khapyorsky <sashak at voltaire.com>

Thanks. Applied.

-- Hal




More information about the general mailing list