CVSROOT:        /cvs
Module name:    src
Changes by:     [email protected] 2024/12/05 07:53:55

Modified files:
        sys/kern       : kern_synch.c 

Log message:
cursig() can return a normally ignored signal if the process is ptraced.
So make sure that sleep_signal_check() returns ERESTART in that case so
that the syscall is retried once ptrace intercepted the signal.

This should fix unexpected EINTR returns of waitpid for precesses that
left SIGCHLD ignored (default). Not the perfect fix but a good enough
bandaid to allow people to debug processes doing forks and waitpid calls.

Problem reported and fix tested by stsp@
OK kettenis@ stsp@

Reply via email to