From 60ba261303916faba17f6c98c7c81da3d50e8078 Mon Sep 17 00:00:00 2001
From: Mark Grondona <mgrondona@llnl.gov>
Date: Wed, 9 Oct 2002 23:02:17 +0000
Subject: [PATCH]  o interconnect_set_capabilities(): no longer need to fork()
 and wait()    here, just fall through after calling qsw_setcap()

---
 src/slurmd/elan_interconnect.c | 19 ++-----------------
 1 file changed, 2 insertions(+), 17 deletions(-)

diff --git a/src/slurmd/elan_interconnect.c b/src/slurmd/elan_interconnect.c
index 9fe92b738eb..00cfc7f50cf 100644
--- a/src/slurmd/elan_interconnect.c
+++ b/src/slurmd/elan_interconnect.c
@@ -139,25 +139,10 @@ int interconnect_set_capabilities(task_start_t * task_start)
 	debug3("setting capability in process %ld", getpid());
 	if (qsw_setcap(task_start->launch_msg->qsw_job, procid) < 0) {
 		error("qsw_setcap: %m");
-		return SLURM_ERROR ;
+		return SLURM_ERROR;
 	}
 
-	pid = fork();
-	switch (pid) {
-		case -1:        /* error */
-			error("set_capabilities: fork: %m");
-			return SLURM_ERROR ;
-		case 0:         /* child falls thru */
-			return SLURM_SUCCESS ;
-		default:        /* parent */
-			if (waitpid(pid, NULL, 0) < 0) {
-				error("set_capabilities: waitpid: %m");
-				return SLURM_ERROR;
-			}
-			_exit(0); /* XXX; why does parent exit here but return
-				          above on an error from waitpid??     */
-			return SLURM_SUCCESS; /* huh? */
-	}
+	return SLURM_SUCCESS;
 }
 
 /*
-- 
GitLab