looking at the code of pth_fork in the IBM's ngpt sources, it seems it does a pretty good job of insuring things are in sane state before calling the actual fork - for example, it ensures that the fork occurs only in the first native thread, i.e. the original process.
/ Marek Habersack (Grendel)
Previous text:
2002-09-04 00:37: Subject: argv[0]?
On the other hand, forking all threads is also a problem, since fork() in UNIX is mostly used to start a new process, that is, fork(); do_some_setup(); exec();, if you then have more than one thread running, things you Dont Expect(tm) can happen between those fork() and exec() calls.
/ Per Hedbor ()