LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Hardware (https://www.linuxquestions.org/questions/linux-hardware-18/)
-   -   Can't build Nvidia driver for kernel 2.6.16-1.2069_FC4 (https://www.linuxquestions.org/questions/linux-hardware-18/cant-build-nvidia-driver-for-kernel-2-6-16-1-2069_fc4-431085/)

tron_thomas 04-02-2006 05:01 PM

Can't build Nvidia driver for kernel 2.6.16-1.2069_FC4
 
I am running Fedora Core 4 on an Intel Pentium IV system that using a 64 Megabyte nVidia GeForce 3 video card. I just updated to version 2.6.16-1.2069 of the kernel. Normally when I update the kernel I have to build the driver for the video card if I want hardware acceleration in X Windows. Usually this is a peice of cake. I simply execute the file NVIDIA-Linux-x86-1.0-8178-pkg1.run with root priveleges, and it builds the new driver, and everything works just fine.

However, after updated to this latest kernel version, building the driver fails with the following output:
cc -Wp,-MD,/tmp/selfgz3703/NVIDIA-Linux-x86-1.0-8178-pkg1/usr/src/nv/.os-i
nterface.o.d -nostdinc -isystem /usr/lib/gcc/i386-redhat-linux/4.0.2/includ
e -D__KERNEL__ -Iinclude -Iinclude2 -I/usr/src/kernels/2.6.16-1.2069_FC4-i68
6/include -include include/linux/autoconf.h -I/tmp/selfgz3703/NVIDIA-Linux-
x86-1.0-8178-pkg1/usr/src/nv -Wall -Wundef -Wstrict-prototypes -Wno-trigraph
s -fno-strict-aliasing -fno-common -ffreestanding -O2 -fomit-frame-pointer -
g -pipe -msoft-float -fno-builtin-sprintf -fno-builtin-log2 -fno-builtin-put
s -mpreferred-stack-boundary=2 -march=i686 -mtune=pentium4 -mregparm=3 -I/us
r/src/kernels/2.6.16-1.2069_FC4-i686/includ
e/asm-i386/mach-default -Iinclude/asm-i386/mach-default -Wdeclaration-after-
statement -Wno-pointer-sign -I/tmp/selfgz3703/NVIDIA-Linux-x86-1.0-8178-pkg
1/usr/src/nv -Wall -Wimplicit -Wreturn-type -Wswitch -Wformat -Wchar-subscri
pts -Wparentheses -Wpointer-arith -Wno-multichar -Werror -O -fno-common -MD
-Wsign-compare -Wno-cast-qual -Wno-error -D_LOOSE_KERNEL_NAMES -D__KERNEL__
-DMODULE -DNTRM -DNVRM -DDYNAMIC_SLI -DNV_MAJOR_VERSION=1 -DNV_MINOR_VERSION
=0 -DNV_PATCHLEVEL=8178 -UDEBUG -U_DEBUG -DNDEBUG -DNV_MULTIPLE_BRIDGE_AGPGA
RT_PRESENT -DNV_CHANGE_PAGE_ATTR_PRESENT -DMODULE -D"KBUILD_STR(s)=#s" -D"KB
UILD_BASENAME=KBUILD_STR(os_interface)" -D"KBUILD_MODNAME=KBUILD_STR(nvidia
)" -c -o /tmp/selfgz3703/NVIDIA-Linux-x86-1.0-8178-pkg1/usr/src/nv/.tmp_os-i
nterface.o /tmp/selfgz3703/NVIDIA-Linux-x86-1.0-8178-pkg1/usr/src/nv/os-inte
rface.c
In file included from include/linux/list.h:7,
from include/linux/wait.h:23,
from include/asm/semaphore.h:41,
from include/linux/sched.h:20,
from include/linux/module.h:10,
from /tmp/selfgz3703/NVIDIA-Linux-x86-1.0-8178-pkg1/usr/src
/nv/nv-linux.h:47,
from /tmp/selfgz3703/NVIDIA-Linux-x86-1.0-8178-pkg1/usr/src
/nv/os-interface.c:26:
include/linux/prefetch.h: In function ‘prefetch_range’:
include/linux/prefetch.h:62: warning: pointer of type ‘void *’ used in a
rithmetic
In file included from include/linux/dmapool.h:14,
from include/linux/pci.h:522,
from /tmp/selfgz3703/NVIDIA-Linux-x86-1.0-8178-pkg1/usr/src
/nv/nv-linux.h:71,
from /tmp/selfgz3703/NVIDIA-Linux-x86-1.0-8178-pkg1/usr/src
/nv/os-interface.c:26:
include/asm/io.h: In function ‘check_signature’:
include/asm/io.h:258: warning: wrong type argument to increment
In file included from /tmp/selfgz3703/NVIDIA-Linux-x86-1.0-8178-pkg1/usr/src
/nv/os-interface.c:26:
/tmp/selfgz3703/NVIDIA-Linux-x86-1.0-8178-pkg1/usr/src/nv/nv-linux.h:677:2:
warning: #warning "conftest.sh failed, assuming remap_page_range(4)!"
/tmp/selfgz3703/NVIDIA-Linux-x86-1.0-8178-pkg1/usr/src/nv/os-interface.c: In
function ‘os_set_mlock_capability’:
/tmp/selfgz3703/NVIDIA-Linux-x86-1.0-8178-pkg1/usr/src/nv/os-interface.c:137
5: error: ‘struct task_struct’ has no member named ‘rlim’
make[4]: *** [/tmp/selfgz3703/NVIDIA-Linux-x86-1.0-8178-pkg1/usr/src/nv/os-i
nterface.o] Error 1
make[3]: *** [_module_/tmp/selfgz3703/NVIDIA-Linux-x86-1.0-8178-pkg1/usr/src
/nv] Error 2
make[2]: *** [modules] Error 2
NVIDIA: left KBUILD.
nvidia.ko failed to build!
make[1]: *** [mdl] Error 1
make: *** [module] Error 2
-> Error.
ERROR: Unable to build the NVIDIA kernel module.


I checked the nVidia web site, and I have the latest version of the driver. What can I do to correct these errors so I am able to build the driver and use it with the new kernel?

Electro 04-02-2006 05:31 PM

Does the previous kernel version work? If so why did you upgrade to the latest kernel. Only upgrade the kernel if it fixes your problem that you are having with your hardware with present kernel. Another time to upgrade the kernel is when it fixes a security flaw.

Try using the vanialla kernel. If that does not work, downgrade the kernel.

rkelsen 04-02-2006 08:30 PM

Quote:

Originally Posted by Electro
Only upgrade the kernel if it fixes your problem that you are having with your hardware with present kernel. Another time to upgrade the kernel is when it fixes a security flaw.

Sage advice.

To answer your question though; the problem you're having is common. It is due to changes in the kernel. NVidia have acknowledged the problem and have issued patches to their drivers which correct the situation.

Patches available here:

http://www.nvnews.net/vbulletin/showthread.php?t=62021

Have fun!

tron_thomas 04-02-2006 08:40 PM

I got the patches and it worked. Thanks.


All times are GMT -5. The time now is 12:07 PM.