Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 22752 - Nvidia-kernel (nvidia.o) is broken with gentoo-sources and Highmem enabled
Summary: Nvidia-kernel (nvidia.o) is broken with gentoo-sources and Highmem enabled
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: x86 Linux
: High major
Assignee: Jay Pfeifer (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-06-13 07:52 UTC by Patrick Dolan
Modified: 2003-07-23 18:21 UTC (History)
0 users

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Patrick Dolan 2003-06-13 07:52:59 UTC
When using gentoo-sources-r5, enabling support for high memory causes the 
nvidia.o module from nvidia-kernel to have dependency errors and fail to load.  
These are the errors: 
 
# modprobe nvidia 
/lib/modules/2.4.20-gentoo-r5/video/nvidia.o: unresolved symbol 
highmem_start_page 
/lib/modules/2.4.20-gentoo-r5/video/nvidia.o: unresolved symbol kmap_prot 
/lib/modules/2.4.20-gentoo-r5/video/nvidia.o: unresolved symbol kmap_pte 
/lib/modules/2.4.20-gentoo-r5/video/nvidia.o: 
Hint: You are trying to load a module without a GPL compatible license 
      and it has unresolved symbols.  Contact the module supplier for 
      assistance, only they can help you. 
 
/lib/modules/2.4.20-gentoo-r5/video/nvidia.o: insmod 
/lib/modules/2.4.20-gentoo-r5/video/nvidia.o failed 
/lib/modules/2.4.20-gentoo-r5/video/nvidia.o: insmod nvidia failed 
 
If high memory support is disabled, the driver will load properly and function as 
expected.  I have tried compiling with less aggressive flags, but my flags aren't very 
aggressive to begin with.  This problem does NOT occur when using 
ac-sources-2.4.21_rc7-r1. 

Reproducible: Always
Steps to Reproduce:
1. Compile gentoo-sources-r5 with High Memory (HIGHMEM) support enabled. 
2. Boot into kernel, emerge nvidia-kernel and nvidia-glx 
3. Start X with "nvidia" driver, or try to modprobe nvidia 
Actual Results:  
Dependency errors or X fails to start, depending on what you do. 

Expected Results:  
Driver should load and X should start, as normally happens without high memory 
support enabled. 

# emerge info 
Portage 2.0.48-r1 (default-x86-1.4, gcc-3.2.2, glibc-2.3.1-r4) 
================================================================= 
System uname: 2.4.21-rc7-ac1 i686 Intel(R) Pentium(R) 4 CPU 2.00GHz 
GENTOO_MIRRORS="http://gentoo.oregonstate.edu 
http://distro.ibiblio.org/pub/Linux/distributions/gentoo" 
CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config 
/usr/kde/3/share/config /usr/X11R6/lib/X11/xkb /usr/kde/3.1/share/config 
/usr/share/config" 
CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" 
PORTDIR="/usr/portage" 
DISTDIR="/usr/portage/distfiles" 
PKGDIR="/usr/portage/packages" 
PORTAGE_TMPDIR="/var/tmp" 
PORTDIR_OVERLAY="" 
USE="x86 oss 3dnow apm avi crypt cups encode gif jpeg libg++ libwww mikmod 
mmx mpeg ncurses nls pdflib png quicktime spell truetype xml2 xmms xv zlib gdbm 
berkdb slang readline arts java sdl gpm perl python imlib oggvorbis motif opengl X 
qt kde gtk gtk2 ssl tcpd pam aalib fbcon directfb svga sse samba cdr dga -gnome 
-alsa" 
COMPILER="gcc3" 
CHOST="i686-pc-linux-gnu" 
CFLAGS="-march=pentium4 -O2 -pipe -fomit-frame-pointer" 
CXXFLAGS="-march=pentium4 -O2 -pipe -fomit-frame-pointer" 
ACCEPT_KEYWORDS="x86" 
MAKEOPTS="-j2" 
AUTOCLEAN="yes" 
SYNC="rsync://rsync.gentoo.org/gentoo-portage" 
FEATURES="sandbox ccache"
Comment 1 Patrick Dolan 2003-06-13 07:57:05 UTC
In addition, the ntfs.o module also has dependency errors with high memory support 
enabled: 
 
# modprobe ntfs 
/lib/modules/2.4.20-gentoo-r5/kernel/fs/ntfs/ntfs.o: unresolved symbol kunmap_high 
/lib/modules/2.4.20-gentoo-r5/kernel/fs/ntfs/ntfs.o: unresolved symbol 
highmem_start_page 
/lib/modules/2.4.20-gentoo-r5/kernel/fs/ntfs/ntfs.o: unresolved symbol kmap_prot 
/lib/modules/2.4.20-gentoo-r5/kernel/fs/ntfs/ntfs.o: unresolved symbol kmap_high 
/lib/modules/2.4.20-gentoo-r5/kernel/fs/ntfs/ntfs.o: unresolved symbol kmap_pte 
/lib/modules/2.4.20-gentoo-r5/kernel/fs/ntfs/ntfs.o: insmod 
/lib/modules/2.4.20-gentoo-r5/kernel/fs/ntfs/ntfs.o failed 
/lib/modules/2.4.20-gentoo-r5/kernel/fs/ntfs/ntfs.o: insmod ntfs failed 
 
This seems relevant so I decided to include it. 
Comment 2 Jay Pfeifer (RETIRED) gentoo-dev 2003-06-13 11:41:20 UTC
this is not a gentoo-sources bug.

do this to solve:

save your .config
rm -rf /usr/src/linux-2.4.20-gentoo-r5/
rm -rf /lib/modules/2.4.20-gentoo-r5/
emerge gentoo-sources
put your .config back in place-(ie. cp .config /usr/src/linux-2.4.20-gentoo-r5/)
make oldconfig
make menuconfig  (just to double check you have all the options you need)
make dep && make clean && make bzImage modules modules_install
put ${KV}/arch/i386/boot/bzImage in /boot (make sure /boot is mounted)
reboot to ensure all is ok... (if you run lilo make sure you run it before..)
remerge the nvidia stuff (ie. emerge nvidia-kernel nvidia-glx)

You should be set...

Jay
Comment 3 Patrick Dolan 2003-06-16 06:31:38 UTC
This did indeed solve the problem.  I'll keep this in mind the next time I have 
dependency errors.  Thank you very much. 
Comment 4 Benjamin Coles 2003-07-23 18:21:09 UTC
Pfeifer explained this to me in plain english, if you compile highmem in, you need to delete the old kernel directory and save the .config because make clean does NOT 100% clean the kernel and neither did make mrproper... This does work, tested on pfeifer-sources-2.4.21-pre4