From 81ab79f311d1f2a7ba0d7331c4e6abef968f69c1 Mon Sep 17 00:00:00 2001 From: Ralph Castain Date: Wed, 7 Jun 2017 21:44:49 -0700 Subject: [PATCH] Ensure the orted doesn't go into an infinite loop during force-terminate Signed-off-by: Ralph Castain --- orte/mca/errmgr/default_orted/errmgr_default_orted.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/orte/mca/errmgr/default_orted/errmgr_default_orted.c b/orte/mca/errmgr/default_orted/errmgr_default_orted.c index a3c5cbce74..05e5e3e414 100644 --- a/orte/mca/errmgr/default_orted/errmgr_default_orted.c +++ b/orte/mca/errmgr/default_orted/errmgr_default_orted.c @@ -138,6 +138,14 @@ static void orted_abort(int error_code, char *fmt, ...) orte_timer_t *timer; int rc; + /* only do this once */ + if (orte_abnormal_term_ordered) { + return; + } + + /* set the aborting flag */ + orte_abnormal_term_ordered = true; + /* If there was a message, construct it */ va_start(arglist, fmt); if (NULL != fmt) {