svn commit: r355097 - in head: sys/kern tests/sys/kern

John Baldwin jhb at FreeBSD.org
Mon Dec 2 17:55:42 UTC 2019


On 11/25/19 10:33 AM, Mariusz Zaborski wrote:
> Author: oshogbo
> Date: Mon Nov 25 18:33:21 2019
> New Revision: 355097
> URL: https://svnweb.freebsd.org/changeset/base/355097
> 
> Log:
>   procdesc: allow to collect status through wait(1) if process is traced
>   
>   The debugger like truss(1) depends on the wait(2) syscall. This syscall
>   waits for ALL children. When it is waiting for ALL child's the children
>   created by process descriptors are not returned. This behavior was
>   introduced because we want to implement libraries which may pdfork(1).
>   
>   The behavior of process descriptor brakes truss(1) because it will
>   not be able to collect the status of processes with process descriptors.
>   
>   To address this problem the status is returned to parent when the
>   child is traced. While the process is traced the debugger is the new parent.
>   In case the original parent and debugger are the same process it means the
>   debugger explicitly used pdfork() to create the child. In that case the debugger
>   should be using kqueue()/pdwait() instead of wait().
>   
>   Add test case to verify that. The test case was implemented by markj at .

Does this fix PR 201276?

Also, what about PRs 220324 and 232679?

-- 
John Baldwin


More information about the svn-src-head mailing list