usermode-sources 2.4.22-r1 modified to fetch uml-patch-2.4.22-6.tar.bz2 with SMP only: gcc -Wl,-T,arch/um/link.ld -static -Wl,--wrap,malloc -Wl,--wrap,free -Wl,--wrap,calloc \ -o linux arch/um/main.o vmlinux.o -L/usr/lib -lutil vmlinux.o(.text+0x267f9): In function `zap_page_range': /usr/src/uml/linux-2.4.22/include/asm-generic/tlb.h:42: undefined reference to `mmu_gathers' vmlinux.o(.text+0x26802):/usr/src/uml/linux-2.4.22/include/asm-generic/tlb.h:44: undefined reference to `mmu_gathers' collect2: ld returned 1 exit status make: *** [linux] Error 1 with SMP and HIGHMEM: mv vmlinux vmlinux.o gcc -Wl,-T,arch/um/link.ld -static -Wl,--wrap,malloc -Wl,--wrap,free -Wl,--wrap,calloc \ -o linux arch/um/main.o vmlinux.o -L/usr/lib -lutil vmlinux.o(.text+0x26869): In function `zap_page_range': /usr/src/uml/linux-2.4.22/include/asm-generic/tlb.h:42: undefined reference to `mmu_gathers' vmlinux.o(.text+0x26872):/usr/src/uml/linux-2.4.22/include/asm-generic/tlb.h:44: undefined reference to `mmu_gathers' vmlinux.o(.text+0x275c6): In function `do_wp_page': /usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_pte' vmlinux.o(.text+0x275d3):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_prot' vmlinux.o(.text+0x27ba4): In function `do_anonymous_page': /usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_pte' vmlinux.o(.text+0x27bc5):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_prot' vmlinux.o(.text+0x27dc4): In function `do_no_page': /usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_pte' vmlinux.o(.text+0x27dd9):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_prot' vmlinux.o(.text+0x27e47):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_pte' vmlinux.o(.text+0x27e5c):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_prot' vmlinux.o(.text+0x284b8): In function `kmap_atomic': /usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_pte' vmlinux.o(.text+0x284d3):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_prot' vmlinux.o(.text+0x39e89): In function `shmem_getpage': /usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_pte' vmlinux.o(.text+0x39eaa):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_prot' vmlinux.o(.text+0x39efb):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_pte' vmlinux.o(.text+0x39f1e):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_prot' vmlinux.o(.text+0x3aea0): In function `bounce_end_io_read': /usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_pte' vmlinux.o(.text+0x3aead):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_prot' vmlinux.o(.text+0x3b1e0): In function `create_bounce': /usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_pte' vmlinux.o(.text+0x3b1ea):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_prot' vmlinux.o(.text+0x3b3bb): In function `map_new_virtual': /usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_prot' vmlinux.o(.text+0xf6707): In function `mem_init': /usr/src/uml/linux-2.4.22/arch/um/kernel/mem.c:48: undefined reference to `phys_page' vmlinux.o(.text+0xf68d3): In function `paging_init': /usr/src/uml/linux-2.4.22/arch/um/kernel/mem.c:131: undefined reference to `init_highmem' vmlinux.o(.text+0xf68e0):/usr/src/uml/linux-2.4.22/arch/um/kernel/mem.c:132: undefined reference to `setup_highmem' vmlinux.o(.text+0x1647d6): In function `skb_copy_bits': /usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_pte' vmlinux.o(.text+0x1647e0):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_prot' vmlinux.o(.text+0x164b18): In function `skb_checksum': /usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_pte' vmlinux.o(.text+0x164b25):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_prot' vmlinux.o(.text+0x164ed6): In function `skb_copy_and_csum_bits': /usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_pte' vmlinux.o(.text+0x164ee0):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_prot' vmlinux.o(__ksymtab+0x2c0): In function `exit_devpts_fs': /usr/src/uml/linux-2.4.22/fs/devpts/inode.c:247: undefined reference to `kmap_prot' vmlinux.o(__ksymtab+0x2c8): In function `exit_devpts_fs': /usr/src/uml/linux-2.4.22/include/linux/mount.h:45: undefined reference to `kmap_pte' collect2: ld returned 1 exit status make: *** [linux] Error 1 with HIGHMEM: mv vmlinux vmlinux.o gcc -Wl,-T,arch/um/link.ld -static -Wl,--wrap,malloc -Wl,--wrap,free -Wl,--wrap,calloc \ -o linux arch/um/main.o vmlinux.o -L/usr/lib -lutil vmlinux.o(.text+0x24ba4): In function `do_wp_page': /usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_pte' vmlinux.o(.text+0x24bb3):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_prot' vmlinux.o(.text+0x24bf9):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_pte' vmlinux.o(.text+0x24c0d):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_prot' vmlinux.o(.text+0x24c97):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_pte' vmlinux.o(.text+0x24ca2):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_prot' vmlinux.o(.text+0x2518d): In function `do_anonymous_page': /usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_pte' vmlinux.o(.text+0x2519e):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_prot' vmlinux.o(.text+0x25361): In function `do_no_page': /usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_pte' vmlinux.o(.text+0x25370):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_prot' vmlinux.o(.text+0x253c4):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_pte' vmlinux.o(.text+0x253cf):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_prot' vmlinux.o(.text+0x3526f): In function `shmem_getpage': /usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_pte' vmlinux.o(.text+0x3527e):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_prot' vmlinux.o(.text+0x352c3):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_pte' vmlinux.o(.text+0x352d1):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_prot' vmlinux.o(.text+0x3607a): In function `bounce_end_io_read': /usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_pte' vmlinux.o(.text+0x3608b):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_prot' vmlinux.o(.text+0x36354): In function `create_bounce': /usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_pte' vmlinux.o(.text+0x36365):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_prot' vmlinux.o(.text+0x36527): In function `map_new_virtual': /usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_prot' vmlinux.o(.text+0xe8697): In function `mem_init': /usr/src/uml/linux-2.4.22/arch/um/kernel/mem.c:48: undefined reference to `phys_page' vmlinux.o(.text+0xe8863): In function `paging_init': /usr/src/uml/linux-2.4.22/arch/um/kernel/mem.c:131: undefined reference to `init_highmem' vmlinux.o(.text+0xe8870):/usr/src/uml/linux-2.4.22/arch/um/kernel/mem.c:132: undefined reference to `setup_highmem' vmlinux.o(.text+0x15274a): In function `skb_copy_bits': /usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_pte' vmlinux.o(.text+0x15275b):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_prot' vmlinux.o(.text+0x152a47): In function `skb_checksum': /usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_pte' vmlinux.o(.text+0x152a5b):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_prot' vmlinux.o(.text+0x152da5): In function `skb_copy_and_csum_bits': /usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_pte' vmlinux.o(.text+0x152db0):/usr/src/uml/linux-2.4.22/include/asm/pgtable.h:225: undefined reference to `kmap_prot' vmlinux.o(__ksymtab+0x2c0): In function `exit_devpts_fs': /usr/src/uml/linux-2.4.22/include/asm/arch/atomic.h:141: undefined reference to `kmap_prot' vmlinux.o(__ksymtab+0x2c8): In function `exit_devpts_fs': /usr/src/uml/linux-2.4.22/fs/devpts/inode.c:249: undefined reference to `kmap_pte' collect2: ld returned 1 exit status make: *** [linux] Error 1 and lots of errors of: /usr/src/uml/linux-2.4.22/include/linux/highmem.h: In function `bh_kmap_irq': /usr/src/uml/linux-2.4.22/include/linux/highmem.h:36: warning: assignment makes pointer from integer without a cast without SMP or HIGHMEM compiles fine. ---------------------------- Portage 2.0.49-r15 (default-x86-1.4, gcc-3.2.3, glibc-2.3.2-r3, 2.4.23) ================================================================= System uname: 2.4.23 i686 AMD Athlon(tm) MP 2600+ Gentoo Base System version 1.4.3.10 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-march=athlon-mp -O3 -fomit-frame-pointer -fstack-protector -funroll-loops -pipe" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /var/qmail/control /usr/share/config /usr/kde/2/share/config /usr/kde/3/share/config" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-march=athlon-mp -O3 -fomit-frame-pointer -fstack-protector -funroll-loops -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="sandbox ccache autoaddcvs" GENTOO_MIRRORS="http://darkstar.ist.utl.pt/gentoo" MAKEOPTS="-j3" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://ftp.rnl.ist.utl.pt/gentoo-portage" USE="x86 crypt ncurses nls opengl spell zlib gdbm slang readline tcpd pam ssl perl python cdr 3dnow clamav dedicated mmx noqmax nptl oav pic src sse threads -oss -apm -arts -avi -cups -encode -foomaticdb -gif -gpm -gtk -imlib -jpeg -kde -gnome -libg++ -libwww -mad -mikmod -motif -mpeg -oggvorbis -pdflib -png -qt -quicktime -sdl -svga -truetype -X -xml2 -xmms -xv -berkdb" PS: sorry for the big bugreport :)
Okay, can you confirm this on a non-UML-kernel?
i didn't understand what you are asking but i'm using vanilla-sources 2.4.22 with linux-headers 2.4.19-r1. emerged usermode-sources (modified to fetch uml-patch-2.4.22-6) and followed the uml.xml guide on www.gentoo.org uname -a output: Linux jogos 2.4.23 #3 SMP Sat Dec 6 21:11:52 WET 2003 i686 AMD Athlon(tm) MP 2600+ AuthenticAMD GNU/Linux
I was asking whether you got the same compilation error if you compiled your UML .config in a vanilla kernel?
Created attachment 21823 [details] .config
no, i've got multiple errors on vanilla-sources 2.4.23 sended the .config file. if i remove the SMP and HIGHMEM, i can compile UML and runs with some errors from the filesystem (my bad). PS; sorry, but i can't output the errors to a file. if you teach me how to... i'll send you all outputs.
OK. This looks like an upstream bug; can you please send this along to the User Mode Linux folks at http://user-mode-linux.sourceforge.net and quote this bugzilla bug to stop wasting useful debug messages. Thanks.