Message ID | 1303322533.21002.121.camel@auk59.llnl.gov (mailing list archive) |
---|---|
State | Rejected |
Delegated to: | Alex Netes |
Headers | show |
Hi Al, On 11:02 Wed 20 Apr , Albert Chu wrote: > Do not use the dimn_ports_file if not using dor routing. If the > dimn_ports_file is specified, it currently will be utilized regardless > of the routing algorithm actually being used. > > Al > > -- I guess that dimn_ports_file option was designed to be used with DOR, however it got me thinking whether this option could be useful for other cases too. For instance, can you use dimn_ports_file to manually sort ports instead of using Support-remote-guid-sorting patch you recently suggested? -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hey Alex, On Wed, 2011-04-27 at 03:50 -0700, Alex Netes wrote: > Hi Al, > > On 11:02 Wed 20 Apr , Albert Chu wrote: > > Do not use the dimn_ports_file if not using dor routing. If the > > dimn_ports_file is specified, it currently will be utilized regardless > > of the routing algorithm actually being used. > > > > Al > > > > -- > > I guess that dimn_ports_file option was designed to be used with DOR, however > it got me thinking whether this option could be useful for other cases too. > For instance, can you use dimn_ports_file to manually sort ports instead of > using Support-remote-guid-sorting patch you recently suggested? I think the dimn_ports_file could feasibly do what the remote_guid_sorting parth does. It's more complicated to setup than something like the --guid_routing_order_file or --dimn_ports_file files, since a fair amount of calculating would have to be done in addition to "finding" the switch guids. But it's definitely doable. Perhaps we'd rename the option to something more generic too, like 'port_search_ordering_file'??? Al
diff --git a/opensm/osm_switch.c b/opensm/osm_switch.c index 9785a9d..47325b6 100644 --- a/opensm/osm_switch.c +++ b/opensm/osm_switch.c @@ -344,7 +344,11 @@ uint8_t osm_switch_recommend_path(IN const osm_switch_t * p_sw, /* port number starts with one and num_ports is 1 + num phys ports */ for (i = start_from; i < start_from + num_ports; i++) { - port_num = osm_switch_get_dimn_port(p_sw, i % num_ports); + if (dor) + port_num = osm_switch_get_dimn_port(p_sw, i % num_ports); + else + port_num = i % num_ports; + if (!port_num || osm_switch_get_hop_count(p_sw, base_lid, port_num) != least_hops)