Hi Hal,

This small patch fixes two similar bugs in Up/Dn routing in OpenSM.
A 8-bits integers were used as indexes when scanning subnet, which
in one case caused OpenSM to crash when ranking "path" is longer than 256 switches, and in other case caused OpenSM to go into infinite
loop when fabric has more than 256 roots.

Please apply both to ofed_1_2 and to master.

-- Yevgeny

Signed-off-by:  Yevgeny Kliteynik <[EMAIL PROTECTED]>
---
osm/opensm/osm_ucast_updn.c |    4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/osm/opensm/osm_ucast_updn.c b/osm/opensm/osm_ucast_updn.c
index 78e8363..398a2b2 100644
--- a/osm/opensm/osm_ucast_updn.c
+++ b/osm/opensm/osm_ucast_updn.c
@@ -473,7 +473,7 @@ updn_subn_rank(
  IN updn_t* p_updn )
{
  osm_switch_t *p_sw;
-  uint8_t rank = base_rank;
+  uint32_t rank = base_rank;
  osm_physp_t *p_physp, *p_remote_physp;
  cl_qlist_t list;
  cl_status_t did_cause_update;
@@ -636,7 +636,7 @@ __osm_subn_calc_up_down_min_hop_table(
  IN uint64_t* guid_list,
  IN updn_t* p_updn )
{
-  uint8_t idx = 0;
+  uint32_t idx = 0;
  int status;

  OSM_LOG_ENTER( &p_updn->p_osm->log, osm_subn_calc_up_down_min_hop_table );
--
1.4.4.1.GIT


_______________________________________________
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

Reply via email to