Re: BUG: NTPL: waitpid() doesn't return?

Roland McGrath
2004-01-31T21:52:51Z

> Your test program works... except that it reports, when I strace it,
>
> [pid 10629] waitpid(10631, Process 10629 suspended
> <unfinished ...>
> [pid 10628] <... mmap2 resumed> ) = 0x41966000
> [pid 10630] waitpid(10632, Process 10630 suspended
> <unfinished ...>
>
> Those "Process ### suspended" messages did NOT happen with the Python
> script that exhibits the bug.

This is an strace bug. Because of goofy ptrace interactions, strace does
funny business with threads doing wait calls. strace should resume those
threads when the pids they are waiting for exit.

Make sure you are using the most current strace and if it's still not
different then report the strace bug (<strace-devel@lists.sourceforge.net>
or https://bugzilla.redhat.com are fine).

To research the issue thoroughly, you may have to avoid relying on strace
to tell you what calls your programs make.