diff --git a/src/slurmd/elan_interconnect.c b/src/slurmd/elan_interconnect.c index 7be5f6db5e650042002d9dfd37d40e465200b52e..a5f08704b998259d747e3ea7579db0f54fb45912 100644 --- a/src/slurmd/elan_interconnect.c +++ b/src/slurmd/elan_interconnect.c @@ -53,11 +53,9 @@ _wait_and_destroy_prg(qsw_jobinfo_t qsw_job) debug3("going to destory program description..."); - while(qsw_prgdestroy(qsw_job) < 0) { + while((qsw_prgdestroy(qsw_job) < 0) && (errno != ESRCH)) { i++; error("qsw_prgdestroy: %m"); - if (errno == ESRCH) - break; if (i == 1) { debug("sending SIGTERM to remaining tasks"); qsw_prgsignal(qsw_job, SIGTERM);