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

Mariusz Zaborski oshogbo at freebsd.org
Sun Dec 8 21:08:35 UTC 2019


On Mon, 2 Dec 2019 at 18:55, John Baldwin <jhb at freebsd.org> wrote:
>
> 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?
Unfortunately, only partially. I still looking at some issues.


More information about the svn-src-head mailing list