Subject: child_return() / _fork() differences
To: None <tech-kern@netbsd.org>
From: Matthias Drochner <M.Drochner@fz-juelich.de>
List: tech-kern
Date: 02/04/2003 15:42:47
Hi -

I've tracked down the reason of fork() misbehaviour in GNU pth
on alpha to originate from syscall(SYS_fork) not working as naively
expected.
It appears that the ports differ in handling of the child's
return value:
i386 clears %eax in child_return() (_and_ masks it in fork.S --
  redundancy?)
alpha does nothing in the kernel, everything in fork.S

What's the background of these differences?
Is there a better way than calling the inofficial _fork()
in libpth?

best regards
Matthias