Subject: bug#56606: Acknowledgement (29.0.50; recent master fails with "creating pipe: too many open files")

From: Stephen Leake <[email-masked]>
Date: Sun, 17 Jul 2022 02:42:04 -0700

On emacs-devel, Eli said:

AFAICT, this loop in deactivate_process:

  /* Beware SIGCHLD hereabouts.  */

  for (i = 0; i < PROCESS_OPEN_FDS; i++)
    close_process_fd (&p->open_fd[i]);

doesn't close the last of the 4 descriptors opened by the 2 emacs_pipe
calls in make-pipe-process.  It calls 'close' with the right value,
and close returns zero, but the pipe stays open.  In Emacs 28, this
same loop successfully closes the descriptor.  I don't know why.

Perhaps bisecting could help.

-- 
-- Stephe