From: Rob L. <ro...@la...> - 2005-11-04 14:07:21
|
Daving Lang grabbed my firmware-linux build script and tried to build it on x86-64, and it barfed trying to compile User Mode Linux: gcc -Wall -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -ffreestanding -O2 -fomit-frame-pointer -D__arch_um__ -DSUBARCH=\"x86_64\" -Dvmap=kernel_vmap -Iarch/um/include -I/root/firmware-build-0.8.9/tmpdir/linux-2.6.13.2/arch/um/kernel/tt/include -I/root/firmware-build-0.8.9/tmpdir/linux-2.6.13.2/arch/um/kernel/skas/include -fno-builtin -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -S -o arch/um/user-offsets.s arch/um/sys-x86_64/user-offsets.c arch/um/sys-x86_64/user-offsets.c: In function `foo': arch/um/sys-x86_64/user-offsets.c:24: error: structure has no member named `rbx' arch/um/sys-x86_64/user-offsets.c:25: error: structure has no member named `rcx' ... and so on. My build is basically extracting the 2.6.14 tarball, adding the squashfs patch, and then doing this: make ARCH=um O=../linux-build allnoconfig && cd ../linux-build && cat >> .config << EOF && CONFIG_MODE_SKAS=y CONFIG_BINFMT_ELF=y CONFIG_HOSTFS=y CONFIG_SYSCTL=y CONFIG_STDERR_CONSOLE=y CONFIG_UNIX98_PTYS=y CONFIG_BLK_DEV_LOOP=y CONFIG_BLK_DEV_UBD=y CONFIG_TMPFS=y CONFIG_SWAP=y CONFIG_LBD=y CONFIG_EXT2_FS=y CONFIG_PROC_FS=y CONFIG_SQUASHFS=y CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 CONFIG_ZLIB_INFLATE=y EOF yes "" | make ARCH=um oldconfig && make ARCH=um && It's not working, and I don't have an x86-64 machine to test this on. I can only assume the config file is wrong, but it's in a way that oldconfig isn't fixing... I don't know quite how ARCH=um figures out whether it's derived from ARCH=i386 or ARCH=x86-64... Rob |
From: Jeff D. <jd...@ad...> - 2005-11-04 15:11:23
|
On Fri, Nov 04, 2005 at 08:07:03AM -0600, Rob Landley wrote: > My build is basically extracting the 2.6.14 tarball, adding the squashfs > patch, and then doing this: > > make ARCH=um O=../linux-build allnoconfig && I would start with a make defconfig. This smacks of a mangled configuration. Jeff |
From: Rob L. <ro...@la...> - 2005-11-04 15:38:48
|
On Friday 04 November 2005 10:04, Jeff Dike wrote: > On Fri, Nov 04, 2005 at 08:07:03AM -0600, Rob Landley wrote: > > My build is basically extracting the 2.6.14 tarball, adding the squashfs > > patch, and then doing this: > > > > make ARCH=um O=../linux-build allnoconfig && > > I would start with a make defconfig. This smacks of a mangled > configuration. Actually, he turned out to be using an older version of my firmware linux build script (the one with the 2.6.13.2 kernel, from the website), and the problem he was seeing is that building on an x86-64 machine in 32 bit emulation mode gets confused. Once he started building in 64 bit mode, he got past that, but then hit the 3 level page tables leak from 2.6.13 shortly thereafter. I sent him a new build script using 2.6.14 and still am waiting to hear back... Thanks, Rob |
From: Blaisorblade <bla...@ya...> - 2005-11-04 17:25:11
|
On Friday 04 November 2005 16:38, Rob Landley wrote: > On Friday 04 November 2005 10:04, Jeff Dike wrote: > > On Fri, Nov 04, 2005 at 08:07:03AM -0600, Rob Landley wrote: > > > My build is basically extracting the 2.6.14 tarball, adding the > > > squashfs patch, and then doing this: > > > > > > make ARCH=um O=../linux-build allnoconfig && > > > > I would start with a make defconfig. This smacks of a mangled > > configuration. > Actually, he turned out to be using an older version of my firmware linux > build script (the one with the 2.6.13.2 kernel, from the website), and the > problem he was seeing is that building on an x86-64 machine in 32 bit > emulation mode gets confused. > Once he started building in 64 bit mode, he got past that, but then hit the > 3 level page tables leak from 2.6.13 shortly thereafter. Don't you know that I maintain a kernel tree exactly for this purpose? The fix is included starting from 2.6.13-bs1. And I've even merged it upstream in -stable (even if it was merged in .4 only). > I sent him a new > build script using 2.6.14 and still am waiting to hear back... -- Inform me of my mistakes, so I can keep imitating Homer Simpson's "Doh!". Paolo Giarrusso, aka Blaisorblade (Skype ID "PaoloGiarrusso", ICQ 215621894) http://www.user-mode-linux.org/~blaisorblade ___________________________________ Yahoo! Messenger: chiamate gratuite in tutto il mondo http://it.messenger.yahoo.com |