OSDN Git Service

Alexandre Oliva writes:
authorEric Andersen <andersen@codepoet.org>
Thu, 6 May 2004 09:16:11 +0000 (09:16 -0000)
committerEric Andersen <andersen@codepoet.org>
Thu, 6 May 2004 09:16:11 +0000 (09:16 -0000)
commit201ca767d53f035f6cb6b1eaeee7b32a2f2f029c
treee2c5fcd74ebcfd0613ef81360aa26e2401774d72
parentc5fc2713c16d80be5c766460e22d7d2fc6c8c516
Alexandre Oliva writes:

The vfork() wrapper defined in libpthread, that's used to run
pthread_atfork()-registered handlers, is not only a very bad idea,
it's broken and useless.  Here's the rationale:

[---------snip----------]

Since the implementation as it stands is broken (linking a program
that vfork()s and exec()s on the child and wait()s on the parent works
unless you happen to link with libpthread), and I can't think of
any workable solution, I suggest that we simply remove the vfork()
overrider in the non-MMU case.  Yes, we might lose some small amount
of functionality here, but it's not like people running uClinux expect
anything resembling actual fork() to work.
libpthread/linuxthreads/ptfork.c