[ofa-general] [PATCH] opensm: recover only for base LID values >= 0xc000

Sasha Khapyorsky sashak at voltaire.com
Fri Dec 14 14:16:36 PST 2007


In initial stage of a subnet value of LID = 0 in PortInfo response can be
valid. Also when LID was zeroed externally OpenSM will ignore this event
(and it was the reason for regression shown in recent ibmgtsim runs). So
we will try to recover LID value only when it is >= 0xc000. This should
fix bug 246 as well and preserves original OpenSM LID "trimmer" behavior
for the case of LID = 0.

Signed-off-by: Sasha Khapyorsky <sashak at voltaire.com>
---
 opensm/opensm/osm_port_info_rcv.c |    3 +--
 1 files changed, 1 insertions(+), 2 deletions(-)

diff --git a/opensm/opensm/osm_port_info_rcv.c b/opensm/opensm/osm_port_info_rcv.c
index ea0cb21..1a2a200 100644
--- a/opensm/opensm/osm_port_info_rcv.c
+++ b/opensm/opensm/osm_port_info_rcv.c
@@ -101,8 +101,7 @@ __osm_pi_rcv_set_sm(IN const osm_pi_rcv_t * const p_rcv,
 static void pi_rcv_check_and_fix_lid(osm_log_t *log, ib_port_info_t * const pi,
 				     osm_physp_t * p)
 {
-	if ((cl_ntoh16(pi->base_lid) > IB_LID_UCAST_END_HO) ||
-	    (cl_ntoh16(pi->base_lid) < IB_LID_UCAST_START_HO)) {
+	if (cl_ntoh16(pi->base_lid) > IB_LID_UCAST_END_HO) {
 		osm_log(log, OSM_LOG_ERROR,
 			"pi_rcv_check_and_fix_lid: ERR 0F04: "
 			"Got invalid base LID 0x%x from the network. "
-- 
1.5.3.4.206.g58ba4




More information about the general mailing list