Hi, I've just run a few tests with your patch using io_guid_files and reverse_hops and it seems your patch introduces a bug. We have a function to calculate the number per link and if I apply this patch it never returns which usually means there is a loop in the routing scheme.
I have had a quick look at your code. One thing I'm not sure of is that when a reverse hop is done you increment both the reverse_hop counter and the current_hops one. Which mean when the hops count is calculate for sw_set_hops it is bigger than it is supposed to be. What should probably be done is increment both but only use current_hops to calculate the number of hops done. reverse_hop will only be used to check if there are still reverse_hop credits left or not (which was its original purpose). By changing the hops count in both call to set_hops_on_remote_sw to current_hops+1 and not current_hops+1 +2* reverse_hops, routing has no loops but results are different (some links are more loaded). I'll run some more tests to see if I can figure this out. Nicolas Le 27/05/2009 12:07, [email protected] a écrit : > This patch makes it legal to have cross links (horizontal links) between > switches at max rank. These switches do have same rank, so hop count cannot > be calculated based on rank anymore. > The horizontal links are treated as downlinks. Switch A has a downlink to B > while B has a downlink to A. Tests on lids and also number of hops makes sure > that we don't loop back and forth across the link. > > Signed-off-by: Frank Olaf Sem-Jacobsen <[email protected]> > Signed-off-by: Line Holen <[email protected]> > _______________________________________________ general mailing list [email protected] http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general
