diff --git a/src/slurmd/slurmstepd/mgr.c b/src/slurmd/slurmstepd/mgr.c
index eb27b9788c03cbe41e70487783066b23f558e9d3..48df1be02eb6acf52ec686d322bb729229ddf3e2 100644
--- a/src/slurmd/slurmstepd/mgr.c
+++ b/src/slurmd/slurmstepd/mgr.c
@@ -1012,6 +1012,7 @@ static int _spawn_job_container(stepd_step_rec_t *job)
 		exit(0);
 	} else if (pid < 0) {
 		error("fork: %m");
+		_set_job_state(job, SLURMSTEPD_STEP_ENDING);
 		return SLURM_ERROR;
 	}