Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 35254 - make linux ARCH=um fails with SMP and HIGHMEM options on.
Summary: make linux ARCH=um fails with SMP and HIGHMEM options on.
Status: RESOLVED UPSTREAM
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Server (show other bugs)
Hardware: All All
: High normal (vote)
Assignee: x86-kernel@gentoo.org (DEPRECATED)
URL: http://user-mode-linux.sourceforge.net
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-12-07 07:20 UTC by José Costa
Modified: 2003-12-14 13:21 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
.config (config-file,8.76 KB, text/plain)
2003-12-07 10:34 UTC, José Costa
Details

Note You need to log in before you can comment on or make changes to this bug.
Description José Costa 2003-12-07 07:20:54 UTC
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 :)
Comment 1 Tim Yamin (RETIRED) gentoo-dev 2003-12-07 09:01:56 UTC
Okay, can you confirm this on a non-UML-kernel?
Comment 2 José Costa 2003-12-07 09:49:14 UTC
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
Comment 3 Tim Yamin (RETIRED) gentoo-dev 2003-12-07 10:08:02 UTC
I was asking whether you got the same compilation error if you compiled your UML .config in a vanilla kernel?
Comment 4 José Costa 2003-12-07 10:34:17 UTC
Created attachment 21823 [details]
.config
Comment 5 José Costa 2003-12-07 10:41:46 UTC
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.
Comment 6 Tim Yamin (RETIRED) gentoo-dev 2003-12-14 13:21:50 UTC
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.