[ofa-general] [OpenSM] Traps 64 and 65 sent too early.

Terry Greeniaus tgree at relay.phys.ualberta.ca
Mon Mar 3 23:59:18 PST 2008


Hi,

This is my first post to the list, so hopefully I get the netiquette 
right.

We are using OpenSM 3.1.5 on our fabric.  Our device is subscribing for
the in and out of service traps (64 and 65) described in section 14.4.9
of the IBA.  Immediately after receive an "in service" trap, we issue a
SubnAdmGet(PortInfoRecord) query to the SA.  In the response, we see
that PortState is still set to Initialize.

Section 14.4.9 p 880 states:

"The events reported by these Notice()s indicate that an endport's
reachability from a subscribing endport has changed. Endport A is
reachable from subscriber endport B if there is a PathRecord with source
B and destination A."

Section 15.5.2.16 (PathRecord) p 899 states:

"For unicast communication, a PathRecord specifying a path from SGID A 
to DGID B exists if all the following conditions hold: 
	- there is a LID-routed path from port A to port B, 
	- PortInfo:PortState of port A is Active, 
	- PortInfo:PortState is Armed or Active for all intermediate 
	  switch and router ports in the path from port A to port B, and
	- PortInfo:PortState of port B is Armed or Active."

I believe this implies that the port that has come into service and been 
reported via an SM Notice should at least be in the Armed state.  Even 
better for us would be if the port was in the Active state, but I can't 
make a case for that by the IBA.

I think this could be fixed by moving the
__osm_state_mgr_report_new_ports() call in osm_state_mgr.c to follow the
call that transitions the subnet to Armed or Active, however I am not
very familiar with the OpenSM code so am appealing to the list to help
me out.

Also, perhaps there is a bug tracker somewhere against which I should 
file a bug report?

Thanks,
TG



More information about the general mailing list