On Fri, Aug 22, 2014 at 03:43:53PM +0200, Jilles Tjoelker wrote: > This is good and necessary for SA_SIGINFO (because of the type of the > SIG_DFL and SIG_IGN constants, and because POSIX says so in the > description of SA_RESETHAND in the sigaction() page). However, there > seems no reason to clear the other flags, which have no effect when the > disposition is SIG_DFL or SIG_IGN but have historically always been > preserved. (Slight exception: if kernel code erroneously loops on > ERESTART, it will eat CPU time iff SA_RESTART is set, independent of the > signal's disposition.) Well, I already committed the patch with several bugs fixed comparing with what was mailed, before your feedback arrived.
Do you consider it is important enough to revert the resetting of other flags ? In particular, your note about the traditional historic behaviour makes me wonder. I do not see why SA_SIGINFO is so special that it must be reset, while other flags are not. The absence of the cases where the default/ignored disposition is affected by the flags seems rather arbitrary. > > I notice a bug in POSIX here: it should specify that execve() clear > SA_SIGINFO bits when it resets signals to SIG_DFL. > > -- > Jilles Tjoelker
pgp9iF6I8M0oD.pgp
Description: PGP signature