threads/119920: fork broken in libpthread

Alfred Perlstein alfred at freebsd.org
Thu Jan 24 14:35:31 PST 2008


* Daniel Eischen <deischen at freebsd.org> [080124 14:28] wrote:
> On Thu, 24 Jan 2008, Alfred Perlstein wrote:
> 
> >* Julian Elischer <julian at elischer.org> [080124 01:17] wrote:
> >>Gary Stanley wrote:
> >>>The following reply was made to PR threads/119920; it has been noted by
> >>>GNATS.
> >>>
> >>>From: Gary Stanley <gary at velocity-servers.net>
> >>>To: bug-followup at FreeBSD.org
> >>>Cc:
> >>>Subject: Re: threads/119920: fork broken in libpthread
> >>>Date: Thu, 24 Jan 2008 03:24:47 -0500
> >>>
> >>>I also have this problem, see threads/118715
> >>>
> >>>I was able to grab some ktrace info, but most of the time the process
> >>>is stuck, and ktrace doesn't display any data.
> >>>
> >>>_______________________________________________
> >>>freebsd-threads at freebsd.org mailing list
> >>>http://lists.freebsd.org/mailman/listinfo/freebsd-threads
> >>>To unsubscribe, send any mail to 
> >>>"freebsd-threads-unsubscribe at freebsd.org"
> >>
> >>dan what IS the fix for this?  I assume you must have fixed it in
> >>-current/7
> >>
> >>what was YOUR fix alfred?
> >
> >Attached.
> 
> Which isn't a correct fix, BTW.  It is possible that the unlock
> can try to give the lock to a non-existent thread.

Yes, I understand that problem, but it's not clear to my why/how it can happen.

I guess because another thread could put itself on the "blocked queue"
for that lock?  Is there a way to prevent that or to clear the lock
afterward?

-Alfred


More information about the freebsd-threads mailing list