Skip to contentSkip to conversation

2.6.15-rc1-bk3 minor breakage

uml-devel Antoine Martin 2 participants 2 messages Nov 15, 2005 – Nov 18, 2005 User-mode Linux (UML)

lore
Share & tools
lore
#0 lore raw

It asked me what CPU I wanted to build for?! (make oldconfig) It breaks if I select K7, but not if I select PPro (default).

make ARCH=um vmlinux
SYMLINK include/asm-um/arch
SYMLINK arch/um/include/sysdep
SYMLINK arch/um/os
SYMLINK include/asm-um/archparam.h
SYMLINK include/asm-um/system.h
SYMLINK include/asm-um/sigcontext.h
SYMLINK include/asm-um/processor.h
SYMLINK include/asm-um/ptrace.h
SYMLINK include/asm-um/module.h
SYMLINK include/asm-um/vm-flags.h
SYMLINK include/asm-um/elf.h
CHK arch/um/include/uml-config.h
UPD arch/um/include/uml-config.h
gcc -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -ffreestanding -O2 -fno-omit-frame-pointer -fno-optimize-sibling-calls -g -D__arch_um__ -DSUBARCH=\"i386\" -Dvmap=kernel_vmap -Din6addr_loopback=kernel_in6addr_loopback -Iarch/um/include -I/usr/src/linux-2.6.15-rc1-bk3-uml/arch/um/kernel/tt/include -I/usr/src/linux-2.6.15-rc1-bk3-uml/arch/um/kernel/skas/include -D_FILE_OFFSET_BITS=64 -march=athlon -mpreferred-stack-boundary=2 -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -S -o arch/um/user-offsets.s arch/um/sys-i386/user-offsets.c

  CHK     arch/um/include/user_constants.h
  UPD     arch/um/include/user_constants.h
  CHK     include/linux/version.h
  UPD     include/linux/version.h

SYMLINK include/asm -> include/asm-um
SPLIT include/linux/autoconf.h -> include/config/*
gcc -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -ffreestanding -O2 -fno-omit-frame-pointer -fno-optimize-sibling-calls -g -D__arch_um__ -DSUBARCH=\"i386\" -Iarch/um/include -I/usr/src/linux-2.6.15-rc1-bk3-uml/arch/um/kernel/tt/include -I/usr/src/linux-2.6.15-rc1-bk3-uml/arch/um/kernel/skas/include -Dvmap=kernel_vmap -Din6addr_loopback=kernel_in6addr_loopback -Derrno=kernel_errno -Dsigprocmask=kernel_sigprocmask -fno-unit-at-a-time -U__i386__ -Ui386 -march=athlon -mpreferred-stack-boundary=2 -D_LARGEFILE64_SOURCE -Wdeclaration-after-statement -Wno-pointer-sign -nostdinc -isystem /usr/lib/gcc/i386-redhat-linux/4.0.1/include -D__KERNEL__ -Iinclude -include include/linux/autoconf.h -S -o arch/um/kernel-offsets.s arch/um/sys-i386/kernel-offsets.c In file included from include/asm/string.h:4,

                 from include/linux/string.h:24,
                 from include/linux/bitmap.h:8,
                 from include/linux/cpumask.h:86,
                 from include/linux/sched.h:15,
                 from arch/um/sys-i386/kernel-offsets.c:3:
include/asm/arch/string.h:288:21: error: asm/mmx.h: No such file or
directory
In file included from include/asm/string.h:4,
                 from include/linux/string.h:24,
                 from include/linux/bitmap.h:8,
                 from include/linux/cpumask.h:86,
                 from include/linux/sched.h:15,
                 from arch/um/sys-i386/kernel-offsets.c:3:

include/asm/arch/string.h: In function ‘__constant_memcpy3d’:
include/asm/arch/string.h:298: warning: implicit declaration of function ‘_mmx_memcpy’
include/asm/arch/string.h:298: warning: return makes pointer from integer without a cast
include/asm/arch/string.h: In function ‘__memcpy3d’:
include/asm/arch/string.h:305: warning: return makes pointer from integer without a cast
make: *** [arch/um/kernel-offsets.s] Error 1

Antoine

-------------------------------------------------------
This SF.Net email is sponsored by the JBoss Inc. Get Certified Today Register for a JBoss Training Course. Free Certification Exam for All Training Attendees Through End of 2005. For more info visit:
http://ads.osdn.com/?ad_idv28&alloc_id845&opМk
_______________________________________________
User-mode-linux-devel mailing list [email protected]
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel

#1 lore raw
Quoted 2 lines · Antoine Martin

It asked me what CPU I wanted to build for?! (make oldconfig) It breaks if I select K7, but not if I select PPro (default).

Fully correct note... I didn't test every possible selection, and there are a few missing stub headers (i.e. containing #include "asm/arch/WHATEVER").

Patch attached but untested. We must also build:

arch/i386/lib/mmx.c

but I expect errors from it.

Quoted 60 lines

make ARCH=um vmlinux

SYMLINK include/asm-um/elf.h
CHK arch/um/include/uml-config.h
UPD arch/um/include/uml-config.h
gcc -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs

(quoted diff) +0 -8
-fno-strict-aliasing -fno-common -ffreestanding -O2
-fno-omit-frame-pointer -fno-optimize-sibling-calls -g -D__arch_um__
-DSUBARCH=\"i386\" -Dvmap=kernel_vmap
-Din6addr_loopback=kernel_in6addr_loopback -Iarch/um/include
-I/usr/src/linux-2.6.15-rc1-bk3-uml/arch/um/kernel/tt/include
-I/usr/src/linux-2.6.15-rc1-bk3-uml/arch/um/kernel/skas/include
-D_FILE_OFFSET_BITS=64 -march=athlon -mpreferred-stack-boundary=2
-D_GNU_SOURCE -D_LARGEFILE64_SOURCE -S -o arch/um/user-offsets.s

arch/um/sys-i386/user-offsets.c

  CHK     arch/um/include/user_constants.h
  UPD     arch/um/include/user_constants.h
  CHK     include/linux/version.h
  UPD     include/linux/version.h

SYMLINK include/asm -> include/asm-um
SPLIT include/linux/autoconf.h -> include/config/*
gcc -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs

(quoted diff) +0 -12
-fno-strict-aliasing -fno-common -ffreestanding -O2
-fno-omit-frame-pointer -fno-optimize-sibling-calls -g  -D__arch_um__
-DSUBARCH=\"i386\" -Iarch/um/include
-I/usr/src/linux-2.6.15-rc1-bk3-uml/arch/um/kernel/tt/include
-I/usr/src/linux-2.6.15-rc1-bk3-uml/arch/um/kernel/skas/include
-Dvmap=kernel_vmap -Din6addr_loopback=kernel_in6addr_loopback
-Derrno=kernel_errno -Dsigprocmask=kernel_sigprocmask
-fno-unit-at-a-time -U__i386__ -Ui386 -march=athlon
-mpreferred-stack-boundary=2 -D_LARGEFILE64_SOURCE
-Wdeclaration-after-statement -Wno-pointer-sign  -nostdinc
-isystem /usr/lib/gcc/i386-redhat-linux/4.0.1/include -D__KERNEL__
-Iinclude  -include include/linux/autoconf.h -S -o

arch/um/kernel-offsets.s arch/um/sys-i386/kernel-offsets.c In file included from include/asm/string.h:4,

                 from include/linux/string.h:24,
                 from include/linux/bitmap.h:8,
                 from include/linux/cpumask.h:86,
                 from include/linux/sched.h:15,
                 from arch/um/sys-i386/kernel-offsets.c:3:
include/asm/arch/string.h:288:21: error: asm/mmx.h: No such file or
directory
In file included from include/asm/string.h:4,
                 from include/linux/string.h:24,
                 from include/linux/bitmap.h:8,
                 from include/linux/cpumask.h:86,
                 from include/linux/sched.h:15,
                 from arch/um/sys-i386/kernel-offsets.c:3:

include/asm/arch/string.h: In function ‘__constant_memcpy3d’:
include/asm/arch/string.h:298: warning: implicit declaration of function ‘_mmx_memcpy’
include/asm/arch/string.h:298: warning: return makes pointer from integer without a cast
include/asm/arch/string.h: In function ‘__memcpy3d’:
include/asm/arch/string.h:305: warning: return makes pointer from integer without a cast
make: *** [arch/um/kernel-offsets.s] Error 1

Antoine

Signature · 3 lines
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
arch/um/sys-i386/Makefile +6 -1
Index: linux-2.6.git/arch/um/sys-i386/Makefile
===================================================================
@@ -5,9 +5,13 @@ obj-y = bitops.o bugs.o checksum.o delay
 obj-$(CONFIG_HIGHMEM) += highmem.o
 obj-$(CONFIG_MODULES) += module.o
 
+# XXX: Should be lib? Supported here? For bitops.o we currently don't care.
+#lib-$(CONFIG_X86_USE_3DNOW) += mmx.o
+obj-$(CONFIG_X86_USE_3DNOW) += mmx.o
+
 USER_OBJS := bugs.o ptrace_user.o sigcontext.o fault.o
 
-SYMLINKS = bitops.c semaphore.c highmem.c module.c
+SYMLINKS = bitops.c semaphore.c highmem.c module.c mmx.c
 
 include arch/um/scripts/Makefile.rules
 
@@ -15,6 +19,7 @@ bitops.c-dir = lib
 semaphore.c-dir = kernel
 highmem.c-dir = mm
 module.c-dir = kernel
+mmx.c-dir = lib
 
 $(obj)/stub_segv.o : _c_flags = $(call unprofile,$(CFLAGS))
 
include/asm-um/mmx.h new file +6 -0
Index: linux-2.6.git/include/asm-um/mmx.h
===================================================================
@@ -0,0 +1,6 @@
+#ifndef __UM_MMX_H
+#define __UM_MMX_H
+
+#include "asm/arch/mmx.h"
+
+#endif