From 124e6c463b6dc70f3b39607da11e8548d3d65e03 Mon Sep 17 00:00:00 2001
From: Danny Auble <da@schedmd.com>
Date: Mon, 13 Feb 2012 09:52:04 -0800
Subject: [PATCH] BGQ - fix xassert happening erroniously when a block is put
 into error state when already in error state.

---
 src/plugins/select/bluegene/bg_record_functions.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/plugins/select/bluegene/bg_record_functions.c b/src/plugins/select/bluegene/bg_record_functions.c
index 268f166bddf..3aa9f2d6833 100644
--- a/src/plugins/select/bluegene/bg_record_functions.c
+++ b/src/plugins/select/bluegene/bg_record_functions.c
@@ -1374,9 +1374,10 @@ extern int put_block_in_error_state(bg_record_t *bg_record, char *reason)
 	if (!block_ptr_exist_in_list(bg_lists->job_running, bg_record)) {
 		list_push(bg_lists->job_running, bg_record);
 		num_unused_cpus -= bg_record->cpu_cnt;
-	} else {
-		info("hey I was in the job_running table %d %d?",
-		     list_count(bg_record->job_list), num_unused_cpus);
+	} else if (!(bg_record->state & BG_BLOCK_ERROR_FLAG)) {
+		info("hey I was in the job_running table %d %d %s?",
+		     list_count(bg_record->job_list), num_unused_cpus,
+		     bg_block_state_string(bg_record->state));
 		xassert(0);
 	}
 
-- 
GitLab