From 073e71b15bb5409b2fb5670b4ed609f4c9b1ff1a Mon Sep 17 00:00:00 2001
From: Danny Auble <da@schedmd.com>
Date: Mon, 12 Sep 2011 12:25:13 -0700
Subject: [PATCH] BLUEGENE - fix issue with BGL/P systems that don't have
 multi-dimensional conn_types.

---
 src/plugins/select/bluegene/select_bluegene.c | 16 ++++++++++++++--
 1 file changed, 14 insertions(+), 2 deletions(-)

diff --git a/src/plugins/select/bluegene/select_bluegene.c b/src/plugins/select/bluegene/select_bluegene.c
index 9b902d8eb74..2b77e465bc4 100644
--- a/src/plugins/select/bluegene/select_bluegene.c
+++ b/src/plugins/select/bluegene/select_bluegene.c
@@ -948,8 +948,20 @@ static int _validate_config_blocks(List curr_block_list,
 			if ((bg_record->conn_type[0] < SELECT_SMALL)
 			    && (init_bg_record->conn_type[0] < SELECT_SMALL)) {
 				for (dim = 0; dim < SYSTEM_DIMENSIONS; dim++) {
-					if (bg_record->conn_type[dim]
-					    != init_bg_record->conn_type[dim])
+					/* Only look at how far we
+					   have set.  The bg_record
+					   should of been set up
+					   correctly in the
+					   parse_blockreq() function.
+					*/
+					if (bg_record->conn_type[dim] ==
+					    (uint16_t)NO_VAL) {
+						dim = SYSTEM_DIMENSIONS;
+						break;
+					}
+
+					if (bg_record->conn_type[dim] !=
+					    init_bg_record->conn_type[dim])
 						break; /* wrong conn_type */
 				}
 				if (dim < SYSTEM_DIMENSIONS)
-- 
GitLab