When SM comes out of Standby, it might have data saved from the time it was previously MASTER. Because of that it might not send LFTs, pkeys and QoS configuration when it becomes MASTER again as it might see that there is no change in the configuration. But because we don't know what previous SM really configured, we must send LFTs, pkeys, and QoS configuration to all switches.
Signed-off-by: Daniel Klein <[email protected]> Signed-off-by: Vladimir Koushnir <[email protected]> Signed-off-by: Hal Rosenstock <[email protected]> Signed-off-by: Alex Netes <[email protected]> --- diff --git a/opensm/osm_state_mgr.c b/opensm/osm_state_mgr.c index 2629fc5..048a88d 100644 --- a/opensm/osm_state_mgr.c +++ b/opensm/osm_state_mgr.c @@ -1080,7 +1079,7 @@ static void do_sweep(osm_sm_t * sm) sm->p_subn->sm_state != IB_SMINFO_STATE_DISCOVERING) return; - if (sm->p_subn->coming_out_of_standby) + if (sm->p_subn->coming_out_of_standby) { /* * Need to force re-write of sm_base_lid to all ports * to do that we want all the ports to be considered @@ -1088,6 +1087,13 @@ static void do_sweep(osm_sm_t * sm) */ state_mgr_clean_known_lids(sm); + /* + * Need to reconfigure LFTs, PKEYs, and QoS on all switches + * when coming out of STANDBY + */ + sm->p_subn->need_update = 1; + } + sm->master_sm_found = 0; /* -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
