diff --git a/src/slurmctld/agent.c b/src/slurmctld/agent.c
index 9de112fe525592fa8e5f46ef6cd1c86e9292a4cb..1d302661bf7fcd49f49f471a9aa30df62dc82f0e 100644
--- a/src/slurmctld/agent.c
+++ b/src/slurmctld/agent.c
@@ -656,6 +656,10 @@ static void *_thread_per_node_rpc(void *args)
 		goto cleanup;
 	}
 #endif
+	if ((msg_type == REQUEST_KILL_TASKS) && (rc == ESRCH)) {
+		/* process is already dead, not a real error */
+		rc = SLURM_SUCCESS;
+	}
 
 	switch (rc) {
 	case SLURM_SUCCESS: