cvs commit: src/sys/conf files.amd64 files.i386
src/sys/amd64/linux32 linux.h linux32_dummy.c linux32_machdep.c
linux32_sysvec.c src/sys/compat/linux linux_misc.c linux_signal.c
linux_util.c src/sys/i386/linux linux.h linux_dummy.c ...
Alexander Leidinger
netchild at FreeBSD.org
Tue Aug 15 12:54:31 UTC 2006
netchild 2006-08-15 12:54:30 UTC
FreeBSD src repository
Modified files:
sys/conf files.amd64 files.i386
sys/amd64/linux32 linux.h linux32_dummy.c linux32_machdep.c
linux32_sysvec.c
sys/compat/linux linux_misc.c linux_signal.c linux_util.c
sys/i386/linux linux.h linux_dummy.c linux_machdep.c
linux_sysvec.c
Log:
Add the linux 2.6.x stuff (not used by default!):
- TLS - complete
- pid/tid mangling - complete
- thread area - complete
- futexes - complete with issues
- clone() extension - complete with some possible minor issues
- mq*/timer*/clock* stuff - complete but untested and the mq* stuff is
disabled when not build as part of the kernel with native FreeBSD mq*
support (module support for this will come later)
Tested with:
- linux-firefox - works, tested
- linux-opera - works, tested
- linux-realplay - doesnt work, issue with futexes
- linux-skype - doesnt work, issue with futexes
- linux-rt2-demo - works, tested
- linux-acroread - doesnt work, unknown reason (coredump) and sometimes
issue with futexes
- various unix utilities in linux-base-gentoo3 and linux-base-fc4:
everything tried worked
On amd64 not everything is supported like on i386, the catchup is planned for
later when the remaining bugs in the new functions are fixed.
To test this new stuff, you have to run
sysctl compat.linux.osrelease=2.6.16
to switch back use
sysctl compat.linux.osrelease=2.4.2
Don't switch while running a linux program, strange things may or may not
happen.
Sponsored by: Google SoC 2006
Submitted by: rdivacky
Some suggestions/help by: jhb, kib, manu at NetBSD.org, netchild
Revision Changes Path
1.3 +105 -0 src/sys/amd64/linux32/linux.h
1.4 +0 -6 src/sys/amd64/linux32/linux32_dummy.c
1.13 +6 -12 src/sys/amd64/linux32/linux32_machdep.c
1.20 +1 -1 src/sys/amd64/linux32/linux32_sysvec.c
1.181 +98 -0 src/sys/compat/linux/linux_misc.c
1.57 +58 -0 src/sys/compat/linux/linux_signal.c
1.31 +7 -2 src/sys/compat/linux/linux_util.c
1.92 +3 -0 src/sys/conf/files.amd64
1.565 +3 -0 src/sys/conf/files.i386
1.66 +99 -0 src/sys/i386/linux/linux.h
1.42 +1 -18 src/sys/i386/linux/linux_dummy.c
1.51 +356 -25 src/sys/i386/linux/linux_machdep.c
1.146 +31 -2 src/sys/i386/linux/linux_sysvec.c
More information about the cvs-src
mailing list