Linux needs %edx to be 0 on entry. It registers it as an atexit function if
authorMatthew Dillon <dillon@dragonflybsd.org>
Wed, 20 Aug 2003 04:44:55 +0000 (04:44 +0000)
committerMatthew Dillon <dillon@dragonflybsd.org>
Wed, 20 Aug 2003 04:44:55 +0000 (04:44 +0000)
commitc0510e9a0318de6af03c50e4ed773a15b4461676
treec0ffefc04668a05d82c398080637c5ab942e3581
parent6eaf6bd91aa1e04f31eb5402684ce0ab0e081509
Linux needs %edx to be 0 on entry.  It registers it as an atexit function if
it isn't NULL.  I thought I had maintained this but I forgot that the
syscall exit code is loaded into %eax,%edx after an execve().  This fixes the
problem.
sys/i386/i386/machdep.c
sys/kern/kern_exec.c
sys/platform/pc32/i386/machdep.c