cvs commit: src/sys/kern kern_sig.c

John Baldwin jhb at freebsd.org
Wed Jun 20 00:26:50 UTC 2007


On Monday 06 June 2005 01:13:11 am David Xu wrote:
> davidxu     2005-06-06 05:13:11 UTC
> 
>   FreeBSD src repository
> 
>   Modified files:
>     sys/kern             kern_sig.c 
>   Log:
>   Fix a bug relavant to debugging, a masked signal unexpectedly interrupts
>   a sleeping thread when process is being debugged.
>   
>   PR: GNU/77818
>   Tested by: Sean C. Farley <sean-freebsd at farley org>

This actually breaks other debugging as now debuggers or other processes using 
procfs/ptrace to catch signals can no longer see ignored signals or 
SIGSTOP/SIGCONT.  The latter breaks strace when execing a new child process 
as it opens a race where the child process hangs because the parent doesn't 
ever see that the child process has stopped itself with SIGSTOP (the parent 
resumes it with SIGCONT when it sees that).  The signal shouldn't make it to 
the target thread if it is ignored, but the process should be stopped and the 
debugger notified of all signals.

-- 
John Baldwin


More information about the cvs-src mailing list