[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] Replacement for the sigs_to_ignore hack in timeout.c
From: |
Paul Eggert |
Subject: |
Re: [PATCH] Replacement for the sigs_to_ignore hack in timeout.c |
Date: |
Thu, 16 Oct 2008 13:37:54 -0700 |
User-agent: |
Gnus/5.11 (Gnus v5.11) Emacs/22.3 (gnu/linux) |
Eric Blake <address@hidden> writes:
> I just checked POSIX, and this is entirely true - the exec*() family is
> allowed to inherit an ignored SIGCHLD, in deference to older systems like
> SysV; and wait()/waitpid() are allowed to fail with ECHILD if SIGCHLD is
> ignored. But most systems these days explicitly set SIGCHLD to SIG_DFL on
> fork; are there still any modern systems where the explicit signal change
> is needed?
I'd be a bit leery of assuming this. It was such a pervasive problem
back in the day. I'd be a bit surprised if the problem were eliminated
from all modern systems in all compilation modes.
> But in looking at the gnulib code for execute.c, I don't see any mention
> of this SIGCHLD anomaly, where wait/waitpid fail if SIGCHLD is ignored.
> On the other hand, gnulib's execute module uses waitid rather than
> waitpid; I guess that this choice of API is immune to the SysV behavior?
Yes, I expect so.
The simplest thing is to leave install.c alone. Porting to mingw is low
priority, surely.