Module Name: src Committed By: reinoud Date: Sat Jun 30 15:03:58 UTC 2012
Modified Files: src/distrib/sets/lists/modules: md.amd64 md.i386 src/etc/etc.amd64: Makefile.inc src/etc/etc.i386: Makefile.inc src/sys/arch/usermode/conf: Makefile.usermode src/sys/modules: Makefile Added Files: src/sys/arch/amd64/conf: GENERIC_USERMODE src/sys/arch/i386/conf: GENERIC_USERMODE Removed Files: src/sys/arch/usermode/conf: GENERIC.amd64 GENERIC.i386 Log Message: Move i386 and amd64 usermode configurations to their respective directories and make the usermode kernels buildalbe under build.sh. The resulting kernels are build and packaged correctly as are the associated modules. To generate a diff of this commit: cvs rdiff -u -r1.32 -r1.33 src/distrib/sets/lists/modules/md.amd64 cvs rdiff -u -r1.38 -r1.39 src/distrib/sets/lists/modules/md.i386 cvs rdiff -u -r1.12 -r1.13 src/etc/etc.amd64/Makefile.inc cvs rdiff -u -r1.65 -r1.66 src/etc/etc.i386/Makefile.inc cvs rdiff -u -r0 -r1.1 src/sys/arch/amd64/conf/GENERIC_USERMODE cvs rdiff -u -r0 -r1.1 src/sys/arch/i386/conf/GENERIC_USERMODE cvs rdiff -u -r1.3 -r0 src/sys/arch/usermode/conf/GENERIC.amd64 cvs rdiff -u -r1.5 -r0 src/sys/arch/usermode/conf/GENERIC.i386 cvs rdiff -u -r1.31 -r1.32 src/sys/arch/usermode/conf/Makefile.usermode cvs rdiff -u -r1.106 -r1.107 src/sys/modules/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/distrib/sets/lists/modules/md.amd64 diff -u src/distrib/sets/lists/modules/md.amd64:1.32 src/distrib/sets/lists/modules/md.amd64:1.33 --- src/distrib/sets/lists/modules/md.amd64:1.32 Tue Jan 17 16:59:37 2012 +++ src/distrib/sets/lists/modules/md.amd64 Sat Jun 30 15:03:56 2012 @@ -1,4 +1,4 @@ -# $NetBSD: md.amd64,v 1.32 2012/01/17 16:59:37 jakllsch Exp $ +# $NetBSD: md.amd64,v 1.33 2012/06/30 15:03:56 reinoud Exp $ ./@MODULEDIR@/acpiacad base-kernel-modules kmod ./@MODULEDIR@/acpiacad/acpiacad.kmod base-kernel-modules kmod ./@MODULEDIR@/acpibat base-kernel-modules kmod @@ -101,6 +101,8 @@ ./@MODULEDIR@/powernow/powernow.kmod base-kernel-modules kmod ./@MODULEDIR@/pwdog base-kernel-modules kmod ./@MODULEDIR@/pwdog/pwdog.kmod base-kernel-modules kmod +./@MODULEDIR@/syscallemu base-kernel-modules kmod +./@MODULEDIR@/syscallemu/syscallemu.kmod base-kernel-modules kmod ./@MODULEDIR@/thinkpad base-kernel-modules kmod ./@MODULEDIR@/thinkpad/thinkpad.kmod base-kernel-modules kmod ./@MODULEDIR@/tprof_amdpmi base-kernel-modules kmod Index: src/distrib/sets/lists/modules/md.i386 diff -u src/distrib/sets/lists/modules/md.i386:1.38 src/distrib/sets/lists/modules/md.i386:1.39 --- src/distrib/sets/lists/modules/md.i386:1.38 Tue Jan 17 16:59:38 2012 +++ src/distrib/sets/lists/modules/md.i386 Sat Jun 30 15:03:56 2012 @@ -1,4 +1,4 @@ -# $NetBSD: md.i386,v 1.38 2012/01/17 16:59:38 jakllsch Exp $ +# $NetBSD: md.i386,v 1.39 2012/06/30 15:03:56 reinoud Exp $ ./@MODULEDIR@/acpiacad base-kernel-modules kmod ./@MODULEDIR@/acpiacad/acpiacad.kmod base-kernel-modules kmod ./@MODULEDIR@/acpibat base-kernel-modules kmod @@ -121,6 +121,8 @@ ./@MODULEDIR@/savagedrm/savagedrm.kmod base-kernel-modules kmod ./@MODULEDIR@/sisdrm base-kernel-modules kmod ./@MODULEDIR@/sisdrm/sisdrm.kmod base-kernel-modules kmod +./@MODULEDIR@/syscallemu base-kernel-modules kmod +./@MODULEDIR@/syscallemu/syscallemu.kmod base-kernel-modules kmod ./@MODULEDIR@/tdfxdrm base-kernel-modules kmod ./@MODULEDIR@/tdfxdrm/tdfxdrm.kmod base-kernel-modules kmod ./@MODULEDIR@/thinkpad base-kernel-modules kmod Index: src/etc/etc.amd64/Makefile.inc diff -u src/etc/etc.amd64/Makefile.inc:1.12 src/etc/etc.amd64/Makefile.inc:1.13 --- src/etc/etc.amd64/Makefile.inc:1.12 Tue Jan 18 00:22:56 2011 +++ src/etc/etc.amd64/Makefile.inc Sat Jun 30 15:03:57 2012 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.inc,v 1.12 2011/01/18 00:22:56 jym Exp $ +# $NetBSD: Makefile.inc,v 1.13 2012/06/30 15:03:57 reinoud Exp $ # # etc.amd64/Makefile.inc -- amd64-specific etc Makefile targets # @@ -8,6 +8,7 @@ KERNEL_SETS= GENERIC KERNEL_SETS+= XEN3_DOM0 XEN3_DOMU +KERNEL_SETS+= GENERIC_USERMODE BUILD_KERNELS= INSTALL INSTALL_XEN3_DOMU Index: src/etc/etc.i386/Makefile.inc diff -u src/etc/etc.i386/Makefile.inc:1.65 src/etc/etc.i386/Makefile.inc:1.66 --- src/etc/etc.i386/Makefile.inc:1.65 Thu Feb 10 00:43:20 2011 +++ src/etc/etc.i386/Makefile.inc Sat Jun 30 15:03:57 2012 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.inc,v 1.65 2011/02/10 00:43:20 jym Exp $ +# $NetBSD: Makefile.inc,v 1.66 2012/06/30 15:03:57 reinoud Exp $ # # etc.i386/Makefile.inc -- i386-specific etc Makefile targets # @@ -12,6 +12,7 @@ KERNEL_SETS+= XEN3_DOM0 KERNEL_SETS+= XEN3_DOMU KERNEL_SETS+= XEN3PAE_DOM0 KERNEL_SETS+= XEN3PAE_DOMU +KERNEL_SETS+= GENERIC_USERMODE # KERNEL_SETS+= GENERIC_TINY # KERNEL_SETS+= GENERIC_PS2TINY Index: src/sys/arch/usermode/conf/Makefile.usermode diff -u src/sys/arch/usermode/conf/Makefile.usermode:1.31 src/sys/arch/usermode/conf/Makefile.usermode:1.32 --- src/sys/arch/usermode/conf/Makefile.usermode:1.31 Sat Jan 7 20:44:41 2012 +++ src/sys/arch/usermode/conf/Makefile.usermode Sat Jun 30 15:03:57 2012 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.usermode,v 1.31 2012/01/07 20:44:41 reinoud Exp $ +# $NetBSD: Makefile.usermode,v 1.32 2012/06/30 15:03:57 reinoud Exp $ USETOOLS?= no NEED_OWN_INSTALL_TARGET?= no @@ -9,17 +9,27 @@ NEED_OWN_INSTALL_TARGET?= no ## USERMODE= $S/arch/usermode GENASSYM_CONF= ${USERMODE}/usermode/genassym.cf + +## support for crosscompiling +.if ${MACHINE_ARCH:Uunset} == "unset" MACHINE_ARCH!=uname -p +.endif ## ## (2) compile settings ## USERMODE_HOSTOS!=uname -s USERMODE_HOSTMACHINE!=uname -m -USERMODE_LIBS= -lc -lrt +USERMODE_LIBS= -L${DESTDIR}/usr/lib -lrt USERMODE_CPPFLAGS=${DEBUG} -U_KERNEL -I/usr/include USERMODE_CPPFLAGS+=${CWARNFLAGS} ${NOGCCERROR:D:U-Werror} +## XXX hack to make it work under build.sh +.if ${TOOLDIR:Uno} != "no" +USERMODE_LIBS+= crti.o +SYSTEM_LD_FIX= cp ${DESTDIR}/usr/lib/crt0.o ${DESTDIR}/usr/lib/crtbegin.o ${DESTDIR}/usr/lib/crtend.o ${DESTDIR}/usr/lib/crti.o .; +.endif + .if ${USERMODE_HOSTOS} == "Linux" USERMODE_LIBS+= -lpthread CPPFLAGS+=-Dstrtoul=netbsd_strtoul @@ -63,6 +73,7 @@ KERN_LDSCRIPT?= kern.ldscript SYSTEM_LD= @${_MKSHMSG} " link ${.CURDIR:T}/${.TARGET}"; \ ${_MKSHECHO}\ ${CC} -static ${COPTS} -Wl,-Map,$@.map -o $@ ${LINKFORMAT} -Ttext ${TEXTADDR} '$${SYSTEM_OBJ}' '$${EXTRA_OBJ}' vers.o ${USERMODE_LIBS}; \ + ${SYSTEM_LD_FIX} \ ${CC} -static ${COPTS} -Wl,-Map,$@.map -o $@ ${LINKFORMAT} -Ttext ${TEXTADDR} ${SYSTEM_OBJ} ${EXTRA_OBJ} vers.o ${USERMODE_LIBS} NVFLAGS= -n Index: src/sys/modules/Makefile diff -u src/sys/modules/Makefile:1.106 src/sys/modules/Makefile:1.107 --- src/sys/modules/Makefile:1.106 Thu Apr 26 03:03:53 2012 +++ src/sys/modules/Makefile Sat Jun 30 15:03:57 2012 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.106 2012/04/26 03:03:53 christos Exp $ +# $NetBSD: Makefile,v 1.107 2012/06/30 15:03:57 reinoud Exp $ .include <bsd.own.mk> @@ -215,6 +215,14 @@ SUBDIR+= pwdog .include <bsd.own.mk> +# +# NetBSD/usermode support +# +.if ${MACHINE_ARCH} == "i386" || \ + ${MACHINE_ARCH} == "x86_64" +SUBDIR+= ../arch/usermode/modules/syscallemu +.endif + # we need our device mapper for LVM .if (${MKLVM} != "no") SUBDIR+= dm Added files: Index: src/sys/arch/amd64/conf/GENERIC_USERMODE diff -u /dev/null src/sys/arch/amd64/conf/GENERIC_USERMODE:1.1 --- /dev/null Sat Jun 30 15:03:58 2012 +++ src/sys/arch/amd64/conf/GENERIC_USERMODE Sat Jun 30 15:03:57 2012 @@ -0,0 +1,20 @@ +# $NetBSD: GENERIC_USERMODE,v 1.1 2012/06/30 15:03:57 reinoud Exp $ + +machine usermode +include "arch/usermode/conf/GENERIC.common" +include "arch/amd64/conf/majors.amd64" + +no options EXEC_ELF32 + +options INSECURE # required by sysinst + +options TEXTADDR=0x40000000 # 1 Gb `phys ram' / total space +options KVMSIZE= 0x10000000 # KVM space reserved in VM map, 256 Mb +options NKMEMPAGES_MAX=32768 # 128 Mb max + +makeoptions COPTS+="-m64" +makeoptions LD="ld -melf_amd64" + +#options INCLUDE_CONFIG_FILE +#ident "GENERIC32-$Revision: 1.1 $" + Index: src/sys/arch/i386/conf/GENERIC_USERMODE diff -u /dev/null src/sys/arch/i386/conf/GENERIC_USERMODE:1.1 --- /dev/null Sat Jun 30 15:03:58 2012 +++ src/sys/arch/i386/conf/GENERIC_USERMODE Sat Jun 30 15:03:57 2012 @@ -0,0 +1,20 @@ +# $NetBSD: GENERIC_USERMODE,v 1.1 2012/06/30 15:03:57 reinoud Exp $ + +machine usermode +include "arch/usermode/conf/GENERIC.common" +include "arch/i386/conf/majors.i386" + +no options EXEC_ELF64 + +options INSECURE # required by sysinst + +options TEXTADDR=0x40000000 # 1 Gb `phys ram' / total space +options KVMSIZE= 0x10000000 # KVM space reserved in VM map, 256 Mb +options NKMEMPAGES_MAX=32768 # 128 Mb max + +makeoptions COPTS+="-m32" +makeoptions LD="ld -melf_i386" + +#options INCLUDE_CONFIG_FILE +#ident "GENERIC32-$Revision: 1.1 $" +