> Date: Thu, 14 May 2020 23:36:28 +0200 > From: Kamil Rytarowski <n...@gmx.com> > > If a signal would not reach the child process (as it is ignored or > masked+SA_IGNOREd) and it is not a crash signal, it is dropped. As I > checked, it's the design in UNIX to overlook SIGCHLD signals in UNIX. > Race free signals could be maybe possible, but with some design rethinking.
I don't understand -- are you saying that if I mask SIGCHLD, e.g. with sigprocmask(SIG_BLOCK), then because sigprop[SIGCHLD] has SA_IGNORE set, any SIGCHLD signals will be discarded while I have it masked? This can't be right, so either I misunderstood what you're saying, or something else is afoot with the test that is making it flaky, or there's a bug in the kernel.