It appears that the post-fork hooks for malloc(3) are somewhat broken such that
when a threaded program forks, and then its child attempts to go threaded, it
deadlocks because it already appears to have locks held.  I am not familiar
enough with the current libthr/libc/rtld-elf interaction that I've been able
to fix it myself, unfortunately.

I discovered this today upgrading my work box from 7.0 to 7.1, but I can easily
reproduce it at home on a stale -CURRENT as well.  Testing on an OS X box to 
make
sure, the regression test does exit 0 there.

Has anyone happened to have fixed this already locally?

-- 
Brian Fundakowski Feldman                           \'[ FreeBSD ]''''''''''\
  <> gr...@freebsd.org                               \  The Power to Serve! \
 Opinions expressed are my own.                       \,,,,,,,,,,,,,,,,,,,,,,\
_______________________________________________
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"

Reply via email to