cvs commit: src/sys/amd64/linux32 linux32_machdep.c
src/sys/compat/linux linux_emul.c src/sys/i386/linux linux_machdep.c
Alexander Leidinger
netchild at FreeBSD.org
Sat Jan 20 14:59:03 UTC 2007
netchild 2007-01-20 14:59:00 UTC
FreeBSD src repository
Modified files:
sys/amd64/linux32 linux32_machdep.c
sys/compat/linux linux_emul.c
sys/i386/linux linux_machdep.c
Log:
MFp4 (113077, 113083, 113103, 113124, 113097):
Dont expose em->shared to the outside world before its properly
initialized. Might not affect anything but its at least a better
coding style.
Dont expose em via p->p_emuldata until its properly initialized.
This also enables us to get rid of some locking and simplify the
code because we are workin on a local copy.
In linux_fork and linux_vfork create the process in stopped state
to be sure that the new process runs with fully initialized emuldata
structure [1]. Also fix the vfork (both in linux_clone and linux_vfork)
race that could result in never woken up process [2].
Reported by: Scot Hetzel [1]
Suggested by: jhb [2]
Reviewed by: jhb (at least some important parts)
Submitted by: rdivacky
Tested by: Scot Hetzel (on amd64)
Change 2 comments (in the new code) to comply to style(9).
Suggested by: jhb
Revision Changes Path
1.27 +37 -4 src/sys/amd64/linux32/linux32_machdep.c
1.13 +5 -8 src/sys/compat/linux/linux_emul.c
1.67 +41 -5 src/sys/i386/linux/linux_machdep.c
More information about the cvs-src
mailing list