Thread (1 message) 1 message, 1 author, 2011-05-14

Re: [PATCH 1/1] Initiate heavy sweep in MFTSubnSet fails during idle time process

From: Hal Rosenstock <hidden>
Date: 2011-05-14 14:43:24

Hi Alex,

On 5/12/2011 12:14 PM, Alex Netes wrote:
quoted hunk
MFTSubnSet failed MADs may leave temporary MC loops in the fabric.
In order to eliminate this faulty state as quick as possible it's a good
thing to initiate a heavy sweep immediately and to wait for the next light
sweep.

Signed-off-by: Alex Netes <alexne-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
---
 opensm/osm_state_mgr.c |    7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/opensm/osm_state_mgr.c b/opensm/osm_state_mgr.c
index dd308f2..aa71b03 100644
--- a/opensm/osm_state_mgr.c
+++ b/opensm/osm_state_mgr.c
@@ -1434,6 +1434,13 @@ static void do_process_mgrp_queue(osm_sm_t * sm)
 		osm_mcast_mgr_process(sm);
 		wait_for_pending_transactions(&sm->p_subn->p_osm->stats);
 	}
+
+	/* if one or more MFTSubnSet MADs fails
+	 * during idle process time initiate heavy sweep */
+	if (sm->p_subn->force_heavy_sweep
+	    || sm->p_subn->subnet_initialization_error)
+		osm_sm_signal(sm, OSM_SIGNAL_SWEEP);
subnet_initialization_error is more than just set MFT failures. Should
it be narrowed down to just those failures ?

Also, while this looks like it would fix the scenario you mention,
couldn't this change cause a continual heavy sweep ?

-- Hal
quoted hunk
+
 }
 
 void osm_state_mgr_process(IN osm_sm_t * sm, IN osm_signal_t signal)
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help