diff --git a/src/slurmd/slurmstepd/io.c b/src/slurmd/slurmstepd/io.c index 4b92a1a29e162bd9726f684aef318800df5e4518..b210f3c1743a17329491bddfbeadff434ed2b196 100644 --- a/src/slurmd/slurmstepd/io.c +++ b/src/slurmd/slurmstepd/io.c @@ -714,6 +714,8 @@ static void *_window_manager(void *arg) if (ioctl(win_info->task->to_stdin, TIOCSWINSZ, &ws)) error("ioctl(TIOCSWINSZ): %s"); if (kill(win_info->task->pid, SIGWINCH)) { + if (errno == ESRCH) + break; error("kill(%d, SIGWINCH): %m", (int)win_info->task->pid); } diff --git a/src/slurmd/slurmstepd/mgr.c b/src/slurmd/slurmstepd/mgr.c index 25dc8f110985f7d38dd1eadfd6502bc496263a70..5671b7cbdd3f08b8a9bd5ca08f0c7c7e3d731e34 100644 --- a/src/slurmd/slurmstepd/mgr.c +++ b/src/slurmd/slurmstepd/mgr.c @@ -954,6 +954,8 @@ _fork_all_tasks(slurmd_job_t *job) jobacct_g_set_proctrack_container_id(job->cont_id); for (i = 0; i < job->ntasks; i++) { + if (job->pty && (job->task[i]->gtid == 0)) + continue; /* * Put this task in the step process group */