Go Back   nV News Forums > Linux Support Forums > NVIDIA Linux

Newegg Daily Deals

Reply
 
Thread Tools
Old 08-27-03, 04:40 AM   #1
geog088
Registered User
 
Join Date: Aug 2003
Posts: 8
Question kernel interface for kernel 2.4.21 ?

Hi,
I tried the new 1.0-4496 nvidia driver on suse linux 8.2 with (Mantel-)kernel 2.4.21(-4) (need it for Harddisk-DMA). The install routine is not able to compile an interface for this and gives no further hint about it.
Will it be possible in some of the next versions of the nvidia driver? Or is there a solution already?
Any hint or help appreciated! Thx,
Andreas
geog088 is offline   Reply With Quote
Old 08-27-03, 11:54 AM   #2
geog088
Registered User
 
Join Date: Aug 2003
Posts: 8
Post

Here is the log file for my problem:

nvidia-installer log file '/var/log/nvidia-installer.log'
creation time: Tue Aug 26 22:31:15 2003

option status:
license pre-accepted : false
update : false
force update : false
expert : false
uninstall : false
driver info : false
no precompiled interface: false
no ncurses color : false
query latest driver ver : false
OpenGL header files : false
no questions : false
silent : false
XFree86 install prefix : /usr/X11R6
OpenGL install prefix : /usr
Installer install prefix: /usr
kernel include path : (not specified)
kernel install path : (not specified)
proc mount point : /proc
ui : (not specified)
tmpdir : /tmp
ftp site : ftp://download.nvidia.com

Using: nvidia-installer ncurses user interface
-> License accepted.
-> There appears to already be a driver installed on your system (version: 1.0-
4363). As part of installing this driver (version: 1.0-4496), the existing
driver will be uninstalled. Are you sure you want to continue? ('no' will a
bort installation) (Answer: Yes)
-> No precompiled kernel interface was found to match your kernel; would you li
ke the installer to attempt to download a kernel interface for your kernel f
rom the NVIDIA ftp site (ftp://download.nvidia.com)? (Answer: No)
-> No precompiled kernel interface was found to match your kernel; this means
that the installer will need to compile a new kernel interface.
-> Kernel include path: '/lib/modules/2.4.21-4-default/build/include'
-> Cleaning kernel module build directory.
executing: 'cd ./usr/src/nv; make clean'...
rm -f nv.o os-agp.o os-interface.o os-registry.o nv-linux.o nv_compiler.h *
.d NVdriver nvidia.o
-> Building kernel module:
executing: 'cd ./usr/src/nv; make nvidia.o SYSINCLUDE=/lib/modules/2.4.21-4-
default/build/include'...
echo \#define NV_COMPILER \"`cc -v 2>&1 | tail -n 1`\" > nv_compiler.h
cc -c -Wall -Wimplicit -Wreturn-type -Wswitch -Wformat -Wchar-subscripts -Wp
arentheses -Wpointer-arith -Wcast-qual -Wno-multichar -O -MD -D__KERNEL__ -
DMODULE -D_LOOSE_KERNEL_NAMES -DNTRM -D_GNU_SOURCE -D_LOOSE_KERNEL_NAMES -D_
_KERNEL__ -DMODULE -DNV_MAJOR_VERSION=1 -DNV_MINOR_VERSION=0 -DNV_PATCHLEVE
L=4496 -DNV_UNIX -DNV_LINUX -DNV_INT64_OK -DNVCPU_X86 -DREMAP_PA
GE_RANGE_4 -I. -I/lib/modules/2.4.21-4-default/build/include -Wno-cast-qual
nv.c
In file included from /lib/modules/2.4.21-4-default/build/include/linux/vmal
loc.h:8,
from nv-linux.h:72,
from nv.c:14:
/lib/modules/2.4.21-4-default/build/include/linux/highmem.h: In function `bh
_kmap':
/lib/modules/2.4.21-4-default/build/include/linux/highmem.h:23: warning: poi
nter of type `void *' used in arithmetic
In file included from nv.c:14:
nv-linux.h: In function `calc_order':
nv-linux.h:497: warning: comparison between signed and unsigned
nv.c: In function `nvos_post_vbios':
nv.c:194: warning: comparison between signed and unsigned
nv.c:194: warning: comparison between signed and unsigned
nv.c: In function `nvl_find_alloc':
nv.c:697: warning: comparison between signed and unsigned
nv.c: In function `nv_kern_mmap':
nv.c:1345: warning: comparison between signed and unsigned
nv.c:1364: warning: comparison between signed and unsigned
nv.c:1391: warning: comparison between signed and unsigned
nv.c:1438: warning: comparison between signed and unsigned
nv.c: In function `nv_find_kernel_mapping':
nv.c:2134: warning: comparison between signed and unsigned
nv.c:2140: error: `vmalloc_reserve' undeclared (first use in this function)
nv.c:2140: error: (Each undeclared identifier is reported only once
nv.c:2140: error: for each function it appears in.)
nv.c: In function `nv_find_agp_kernel_mapping':
nv.c:2197: warning: comparison between signed and unsigned
nv.c: In function `nv_alloc_pages':
nv.c:2366: warning: comparison between signed and unsigned
nv.c:2394: warning: comparison between signed and unsigned
make: *** [nv.o] Error 1
-> Error.
ERROR: Unable to build the NVIDIA kernel module.
ERROR: Installation has failed. Please see the file
'/var/log/nvidia-installer.log' for details. You may find suggestions
on fixing installation problems in the README available on the Linux
driver download page at www.nvidia.com.
geog088 is offline   Reply With Quote
Old 08-28-03, 03:36 AM   #3
XoD
Registered User
 
XoD's Avatar
 
Join Date: Aug 2003
Location: Paris - France
Posts: 101
Default gcc

Try to do it again after upgrading your version of gcc the gnu compiler.
XoD is offline   Reply With Quote
Old 08-28-03, 05:57 AM   #4
geog088
Registered User
 
Join Date: Aug 2003
Posts: 8
Default

Thx,

I downloaded all gcc-3.3.1 rpms from ftp.suse... and installed with:
rpm -U --nodeps *.rpm

now: how to set "IGNORE_CC_MISMATCH"?
"NVIDIA...run -A" does not give a hint ...
(I hope I haven't ruined the installation with the upgrade)

-> /var/log/nvidia-installer.log:
-------------------------------------------------
You appear to be compiling the NVIDIA kernel module with
a compiler different from the one that was used to compile
the running kernel. This may be perfectly fine, but there
are cases where this can lead to unexpected behaviour and
system crashes.

If you know what you are doing and want to override this
check, you can do so by setting IGNORE_CC_MISMATCH.

In any other case, set the CC environment variable to the
name of the compiler that was used to compile the kernel.

ESC[1;31m*** Failed cc sanity check. Bailing out! ***
ESC[0mmake: *** [gcc-check] Error 1
-> Error.
ERROR: Unable to build the NVIDIA kernel module.
-------------------------------------------------

then I set "export IGNORE_CC_MISMATCH=yes"
and the result=

-> /var/log/nvidia-installer.log:
-------------------------------------------------
-> No matching precompiled kernel interface was found on the NVIDIA ftp site;
this means that the installer will need to compile a kernel interface for
your kernel.
-> Kernel include path: '/lib/modules/2.4.21-4-default/build/include'
-> Cleaning kernel module build directory.
executing: 'cd ./usr/src/nv; make clean'...
rm -f nv.o os-agp.o os-interface.o os-registry.o nv-linux.o nv_compiler.h *
.d NVdriver nvidia.o
-> Building kernel module:
executing: 'cd ./usr/src/nv; make nvidia.o SYSINCLUDE=/lib/modules/2.4.21-4-
default/build/include'...
echo \#define NV_COMPILER \"`gcc -v 2>&1 | tail -1`\" > nv_compiler.h
gcc -c -Wall -Wimplicit -Wreturn-type -Wswitch -Wformat -Wchar-subscripts -W
parentheses -Wpointer-arith -Wcast-qual -Wno-multichar -O -MD -D__KERNEL__
-DMODULE -D_LOOSE_KERNEL_NAMES -DNTRM -D_GNU_SOURCE -D_LOOSE_KERNEL_NAMES -D
__KERNEL__ -DMODULE -DNV_MAJOR_VERSION=1 -DNV_MINOR_VERSION=0 -DNV_PATCHLEV
EL=4363 -DNV_UNIX -DNV_LINUX -DNV_INT64_OK -DNVCPU_X86 -DREMAP_P
AGE_RANGE_4 -I. -I/lib/modules/2.4.21-4-default/build/include -Wno-cast-qua
l nv.c
In file included from /lib/modules/2.4.21-4-default/build/include/linux/vmal
loc.h:8,
from nv-linux.h:72,
from nv.c:14:
/lib/modules/2.4.21-4-default/build/include/linux/highmem.h: In function `bh
_kmap':
/lib/modules/2.4.21-4-default/build/include/linux/highmem.h:23: warning: poi
nter of type `void *' used in arithmetic
nv.c: In function `nv_find_kernel_mapping':
nv.c:2091: error: `vmalloc_reserve' undeclared (first use in this function)
nv.c:2091: error: (Each undeclared identifier is reported only once
nv.c:2091: error: for each function it appears in.)
make: *** [nv.o] Error 1
-> Error.
ERROR: Unable to build the NVIDIA kernel module.
-------------------------------------------------

Hm, gcc-3.3.1 not backward compatible???
geog088 is offline   Reply With Quote
Old 08-28-03, 07:41 AM   #5
XoD
Registered User
 
XoD's Avatar
 
Join Date: Aug 2003
Location: Paris - France
Posts: 101
Default hum... strange...

I looked into the src of the nvidia kernel module... and the line number where you get an error is not the right one... fishy...
Try gcc 3.2.x and be sure you have the last NVIDIA driver package(4496-pkg2 I think)
XoD is offline   Reply With Quote
Old 08-28-03, 08:07 AM   #6
geog088
Registered User
 
Join Date: Aug 2003
Posts: 8
Default

Thx for the reply,
but the error is the same with NVIDIA-Linux-x86-1.0-4496-pkg2.run.
I think it's not a good idea to switch back to gcc-3.2.x since suse8.2 has been shipped with a prerelease of gcc-3.3 and now I only installed the official 3.3.1 release.
On the original suse8.2 distribution (with gcc-3.3 prerelease) compiling of the kernel interface was no problem.
geog088 is offline   Reply With Quote
Old 08-28-03, 08:47 AM   #7
XoD
Registered User
 
XoD's Avatar
 
Join Date: Aug 2003
Location: Paris - France
Posts: 101
Unhappy ...

Well... compilation pbs... you should turn to suse and tell them the pb. I think you pb is very distro dependant. Well... enought to get help from them.
XoD is offline   Reply With Quote
Old 08-28-03, 11:25 AM   #8
zander
NVIDIA Corporation
 
zander's Avatar
 
Join Date: Aug 2002
Posts: 3,740
Default

You may be able to work around the problem by following these steps:

Code:
# ls
NVIDIA-Linux-x86-1.0-4496-pkg0.run
# wget http://www.minion.de/files/NVIDIA_ke....0-4496-2.diff
# sh NVIDIA-Linux-x86-1.0-4496-pkg0.run --extract-only
# cd NVIDIA-Linux-x86-1.0-4496-pkg0
# cd usr/src/nv
# patch -p1 < ../../../../NVIDIA_kernel-1.0-4496-2.diff
# cd ../../../..
# NVIDIA-Linux-x86-1.0-4496-pkg0/nvidia-installer
Note that -pkg0 and -pkg2 are interchangeable in this case, since no precompiled kernel interfaces will be used.
zander is offline   Reply With Quote

Old 08-28-03, 12:08 PM   #9
geog088
Registered User
 
Join Date: Aug 2003
Posts: 8
Default

wow, that helps a good way, thx:

after running your code I did:
"NVIDIA-Linux-x86-1.0-4496-pkg2/nvidia-installer --kernel-include-path=/usr/src/linux-2.4.21-4/include"

the good news:
-------------------------------------------------
cc -c -Wall -Wimplicit -Wreturn-type -Wswitch -Wformat -Wchar-subscripts -Wp
arentheses -Wpointer-arith -Wcast-qual -Wno-multichar -O -MD -D__KERNEL__ -
DMODULE -D_LOOSE_KERNEL_NAMES -DNTRM -D_GNU_SOURCE -D_LOOSE_KERNEL_NAMES -D_
_KERNEL__ -DMODULE -DNV_MAJOR_VERSION=1 -DNV_MINOR_VERSION=0 -DNV_PATCHLEVE
L=4496 -DNV_UNIX -DNV_LINUX -DNV_INT64_OK -DNVCPU_X86 -DREMAP_PA
GE_RANGE_4 -I. -I/usr/src/linux-2.4.21-4/include -Wno-cast-qual os-registry
.c
In file included from /usr/src/linux-2.4.21-4/include/linux/vmalloc.h:8,
from nv-linux.h:72,
from os-registry.c:14:
/usr/src/linux-2.4.21-4/include/linux/highmem.h: In function `bh_kmap':
/usr/src/linux-2.4.21-4/include/linux/highmem.h:23: warning: pointer of type
`void *' used in arithmetic
ld -r -o nv-linux.o nv.o os-agp.o os-interface.o os-registry.o
ld -r -o nvidia.o nv-linux.o nv-kernel.o
-> done.
-> Kernel module compilation complete.
-------------------------------------------------


Now the bad news:
-------------------------------------------------
ERROR: Unable to load the kernel module 'nvidia.o'. This is most likely
because the kernel module was built using the wrong kernel header files.
Please make sure you have installed the kernel header files for your
kernel; on Red Hat Linux systems, for example, be sure you have the
'kernel-source' rpm installed. If you know the correct kernel header
files are installed, you may specify the kernel include path with the
'--kernel-include-path' commandline option.
-> Kernel module load error: ./usr/src/nv/nvidia.o: kernel-module version
mismatch
./usr/src/nv/nvidia.o was compiled for kernel version 2.4.21--
while this kernel is version 2.4.21-4-default.
-------------------------------------------------

How to tell that it is the same? (is it?).
Thx a lot so far.
geog088 is offline   Reply With Quote
Old 08-28-03, 12:26 PM   #10
zander
NVIDIA Corporation
 
zander's Avatar
 
Join Date: Aug 2002
Posts: 3,740
Default

If the kernel source tree in question is identical to the one used to build the kernel, then that's strange. What's the EXTRAVERSION in /usr/src/linux-2.4.21-4/Makefile?
zander is offline   Reply With Quote
Old 08-28-03, 02:08 PM   #11
geog088
Registered User
 
Join Date: Aug 2003
Posts: 8
Default

I haven't compiled the kernel myself (may be that's the problem), I've
downloaded the rpm's from suse ftp (Mantel).
the makefile looks like this:

VERSION = 2
PATCHLEVEL = 4
SUBLEVEL = 21
EXTRAVERSION = -$(CONFIG_RELEASE)-$(CONFIG_CFGNAME)

KERNELRELEASE=$(VERSION).$(PATCHLEVEL).$(SUBLEVEL) $(EXTRAVERSION)
...
geog088 is offline   Reply With Quote
Old 08-28-03, 02:53 PM   #12
zander
NVIDIA Corporation
 
zander's Avatar
 
Join Date: Aug 2002
Posts: 3,740
Default

I guess you could try something like (in the kernel source directory, /usr/src/linux-2.4.21-4):

Code:
# make mrproper
# make CONFIG_RELEASE=4 CONFIG_CFGNAME=default cloneconfig depend clean
... and retry the NVIDIA driver installation afterwards.
zander is offline   Reply With Quote
Reply


Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


Similar Threads
Thread Thread Starter Forum Replies Last Post
Random crashes, NVRM Xid messages Iesos NVIDIA Linux 90 10-04-12 04:27 AM
Corrupted display - 302.17 - Dell Precision T3500 (G98 [Quadro NVS 295]) gbailey NVIDIA Linux 1 06-27-12 11:24 AM
UEFI+Nvidia - NVRM: Your system is not currently configured to drive a VGA console... interzoneuk NVIDIA Linux 0 06-26-12 05:51 AM
xorg locks-up with newest nvidia drivers w/ vdpau. theroot NVIDIA Linux 1 06-24-12 12:04 PM
Crash when logout from X TGL NVIDIA Linux 10 09-13-02 09:22 PM

All times are GMT -5. The time now is 06:59 PM.


Powered by vBulletin® Version 3.7.1
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Copyright 1998 - 2014, nV News.