Need the help on debug the Python VS libpthread..

Daniel Eischen eischen at vigrid.com
Tue Feb 24 14:26:24 PST 2004


On Tue, 24 Feb 2004, Jeremy Messenger wrote:

> On Tue, 24 Feb 2004 10:57:32 -0800 (PST), Julian Elischer 
> <julian at elischer.org> wrote:
> 
> >
> >
> > On Tue, 24 Feb 2004, Jeremy Messenger wrote:
> >
> >> Great, thank guys! I now can install net/straw with optimized on
> >> libpthread. I am adding -thread in the CC, so the thread developers can
> >> catch here too. :-)
> >
> > so what was fixed between teh quoted mail below and now?
> 
> A workaround (not real fix?) as perky has committed[1]. There's something 
> wrong with waitpid if it runs as libpthread, since without the workaround 
> can run fine with libc_r.

It is not necessarily a problem with libpthread.  waitpid() can
return EINTR when interrupted by a signal.  If SIGCHLD isn't
masked by the thread, then it is certainly plausible that it
can get interrupted by it.

You may not have seen it with libc_r because it handles signals
differently as well as wrap waitpid() so it doesn't block the
process.  Libpthread doesn't wrap waitpid() except to make it
a cancellation point.  If its returning EINTR, I would suspect
that it has received a signal.

-- 
Dan Eischen



More information about the freebsd-threads mailing list