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

Newegg Daily Deals

Reply
 
Thread Tools
Old 10-16-05, 03:44 PM   #1
shock56
Registered User
 
Join Date: Oct 2005
Posts: 2
Default API Mismatch

I've noticed that there are several posts related to the "API Mismatch" error that can occur. I'm currently suffering from this myself and despite a couple of days of research I've had no luck getting passed this problem. I am able to uninstall and reinstall this package as needed:

NVIDIA-Linux-x86-1.0-7676-pkg1.run.

The results appear just fine. Here's the nvidia log after the install:
(I removed a bit to keep from having too long of a message, but nothing vital.)

nvidia-installer log file '/var/log/nvidia-installer.log'
creation time: Sun Oct 16 14:48:34 2005

Using: nvidia-installer ncurses user interface
-> License accepted.
-> 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 source path: '/lib/modules/2.6.12-9-686/build'
-> Performing CC test with CC="gcc-3.4".
-> Performing rivafb check.
-> Cleaning kernel module build directory.
executing: 'cd ./usr/src/nv; make clean'...
rm -f -f nv.o nv-vm.o os-agp.o os-interface.o os-registry.o nv.o nv-vm.o os-
agp.o os-interface.o os-registry.o nvidia.mod.o
rm -f -f build-in.o nv-linux.o *.d .*.{cmd,flags}
rm -f -f nvidia.{o,ko,mod.{o,c}} nv_compiler.h *~
rm -f -rf .tmp_versions
-> Building kernel module:
executing: 'cd ./usr/src/nv; make module SYSSRC=/lib/modules/2.6.12-9-686/bu
ild SYSOUT=/lib/modules/2.6.12-9-686/build'...

NVIDIA: calling KBUILD...
<*Removed some lines here*>
ME=nvidia -c -o /tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/src/nv/.
tmp_nv-vm.o /tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/src/nv/nv-vm
.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/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/sr
c/nv/nv-linux.h:46,
from /tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/sr
c/nv/nv-vm.c:14:
include/linux/prefetch.h: In function `prefetch_range':
include/linux/prefetch.h:62: warning: pointer of type `void *' used in arith
metic
In file included from include/linux/dmapool.h:14,
from include/linux/pci.h:864,
from /tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/sr
c/nv/nv-linux.h:69,
from /tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/sr
c/nv/nv-vm.c:14:
include/asm/io.h: In function `check_signature':
include/asm/io.h:253: warning: wrong type argument to increment
gcc-3.4 -Wp,-MD,/tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/src/nv
/.os-agp.o.d -nostdinc -isystem /usr/lib/gcc/i486-linux-gnu/3.4.5/include -
D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -fno-strict-
aliasing -fno-common -ffreestanding -O2 -fomit-frame-pointer -pipe -msof
t-float -mpreferred-stack-boundary=2 -fno-unit-at-a-time -march=i686 -Iinclu
de/asm-i386/mach-default -Wdeclaration-after-statement -I/tmp/selfgz16308/N
VIDIA-Linux-x86-1.0-7676-pkg1/usr/src/nv -Wall -Wimplicit -Wreturn-type -Wsw
itch -Wformat -
Wchar-subscripts -Wparentheses -Wpointer-arith -Wno-multichar -Werror -O -
fno-common -MD -Wsign-compare -Wno-cast-qual -Wno-error -D_LOOSE_KERNEL_NA
MES -D__KERNEL__ -DMODULE -DNTRM -D_GNU_SOURCE -D_LOOSE_KERNEL_NAMES -D__KE
RNEL__ -DMODULE -DNV_MAJOR_VERSION=1 -DNV_MINOR_VERSION=0 -DNV_PATCHLEVEL=7
676 -UDEBUG -U_DEBUG -DNDEBUG -DNV_SIGNAL_STRUCT_RLIM -DNV_MULTIPLE_BRIDGE_
AGPGART_PRESENT -DNV_REMAP_PFN_RANGE_PRESENT -DNV_CHANGE_PAGE_ATTR_PRESENT -
DNV_PCI_DISABLE_DEVICE_PRESENT -DNV_PCI_GET_CLASS_PRESENT -DNV_VMAP_4_PRESEN
T -DMODULE -DKBUILD_BASENAME=os_agp -DKBUILD_MODNAME=nvidia -c -o /tmp/self
gz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/src/nv/.tmp_os-agp.o /tmp/selfgz1
6308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/src/nv/os-agp.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/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/sr
c/nv/nv-linux.h:46,
from /tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/sr
c/nv/os-agp.c:24:
include/linux/prefetch.h: In function `prefetch_range':
include/linux/prefetch.h:62: warning: pointer of type `void *' used in arith
metic
In file included from include/linux/dmapool.h:14,
from include/linux/pci.h:864,
from /tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/sr
c/nv/nv-linux.h:69,
from /tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/sr
c/nv/os-agp.c:24:
include/asm/io.h: In function `check_signature':
include/asm/io.h:253: warning: wrong type argument to increment
gcc-3.4 -Wp,-MD,/tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/src/nv
/.os-interface.o.d -nostdinc -isystem /usr/lib/gcc/i486-linux-gnu/3.4.5/inc
lude -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -fno-s
trict-aliasing -fno-common -ffreestanding -O2 -fomit-frame-pointer -pipe
-msoft-float -mpreferred-stack-boun
dary=2 -fno-unit-at-a-time -march=i686 -Iinclude/asm-i386/mach-default -Wdec
laration-after-statement -I/tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/
usr/src/nv -Wall -Wimplicit -Wreturn-type -Wswitch -Wformat -Wchar-subscript
s -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 -D_GNU_SOURCE -D_LOOSE_KERNEL_NAMES -D__KERNEL__ -DMODULE
-DNV_MAJOR_VERSION=1 -DNV_MINOR_VERSION=0 -DNV_PATCHLEVEL=7676 -UDEBUG -U_D
EBUG -DNDEBUG -DNV_SIGNAL_STRUCT_RLIM -DNV_MULTIPLE_BRIDGE_AGPGART_PRESENT -
DNV_REMAP_PFN_RANGE_PRESENT -DNV_CHANGE_PAGE_ATTR_PRESENT -DNV_PCI_DISABLE_D
EVICE_PRESENT -DNV_PCI_GET_CLASS_PRESENT -DNV_VMAP_4_PRESENT -DMODULE -DKBU
ILD_BASENAME=os_interface -DKBUILD_MODNAME=nvidia -c -o /tmp/selfgz16308/NVI
DIA-Linux-x86-1.0-7676-pkg1/usr/src/nv/.tmp_os-interface.o /tmp/selfgz16308/
NVIDIA-Linux-x86-1.0-7676-pkg1/usr/src/nv/os-interface.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/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/sr
c/nv/nv-linux.h:46,
from /tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/sr
c/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 arith
metic
In file included from include/linux/dmapool.h:14,
from include/linux/pci.h:864,
from /tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/sr
c/nv/nv-linux.h:69,
from /tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/sr
c/nv/os-interface.c:26:
include/asm/io.h: In function `check_signature':
include/asm/io.h:253: warning: wrong type argument to increment
gcc-3.4 -Wp,-MD,/tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/src/nv
/.os-registry.o.d -nostdinc -isystem /usr/lib/gcc/i486-linux-gnu/3.4.5/incl
ude -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -fno-st
rict-aliasing -fno-common -ffreestanding -O2 -fomit-frame-pointer -pipe
-msoft-float -mpreferred-stack-boundary=2 -fno-unit-at-a-time -march=i686 -I
include/asm-i386/mach-default -Wdeclaration-after-statement -I/tmp/selfgz16
308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/src/nv -Wall -Wimplicit -Wreturn-type
-Wswitch -Wformat -Wchar-subscripts -Wparentheses -Wpointer-arith -Wno-mult
ichar -Werror -O -fno-common -MD -Wsign-compare -Wno-cast-qual -Wno-error
-D_LOOSE_KERNEL_NAMES -D__KERNEL__ -DMODULE -DNTRM -D_GNU_SOURCE -D_LOOSE_K
ERNEL_NAMES -D__KERNEL__ -DMODULE -DNV_MAJOR_VERSION=1 -DNV_MINOR_VERSION=0
-DNV_PATCHLEVEL=7676 -UDEBUG -U_DEBUG -DNDEBUG -DNV_SIGNAL_STRUCT_RLIM -DNV
_MULTIPLE_BRIDGE_AGPGART_PRESENT -DNV_REMAP_PFN_RANGE_PRESENT -DNV_CHANGE_PA
GE_ATTR_PRESENT -DNV_PCI_DISABLE_DEVICE_PRESENT -DNV_PCI_GET_CLASS_PRESENT -
DNV_VMAP_4_PRESENT -DMODULE -DKBUILD_BASENAME=os_regi
stry -DKBUILD_MODNAME=nvidia -c -o /tmp/selfgz16308/NVIDIA-Linux-x86-1.0-767
6-pkg1/usr/src/nv/.tmp_os-registry.o /tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7
676-pkg1/usr/src/nv/os-registry.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/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/sr
c/nv/nv-linux.h:46,
from /tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/sr
c/nv/os-registry.c:14:
include/linux/prefetch.h: In function `prefetch_range':
include/linux/prefetch.h:62: warning: pointer of type `void *' used in arith
metic
In file included from include/linux/dmapool.h:14,
from include/linux/pci.h:864,
from /tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/sr
c/nv/nv-linux.h:69,
from /tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/sr
c/nv/os-registry.c:14:
include/asm/io.h: In function `check_signature':
include/asm/io.h:253: warning: wrong type argument to increment
ld -m elf_i386 -r -o /tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/
src/nv/nvidia.o /tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/src/nv/n
v-kernel.o /tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/src/nv/nv.o /
tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/src/nv/nv-vm.o /tmp/selfg
z16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/src/nv/os-agp.o /tmp/selfgz16308/N
VIDIA-Linux-x86-1.0-7676-pkg1/usr/src/nv/os-interface.o /tmp/selfgz16308/NVI
DIA-Linux-x86-1.0-7676-pkg1/usr/src/nv/os-registry.o
Building modules, stage 2.
make -rR -f /usr/src/linux-headers-2.6.12-9-686/scripts/Makefile.modpost
scripts/mod/modpost -m -a -i /usr/src/linux-headers-2.6.12-9-686/Module.sy
mvers /tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/src/nv/nvidia.o
Warning: could not find /tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/
src/nv/.nv-kernel.o.cmd for /tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/
usr/src/nv/nv-kernel.o
gcc-3.4 -Wp,-MD,/tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/src/nv
/.nvidia.mod.o.d -nostdinc -isystem /usr/lib/gcc/i486-linux-gnu/3.4.5/inclu
de -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -fno-str
ict-aliasing -fno-common -ffreestanding -O2 -fomit-frame-pointer -pipe -
msoft-float -mpreferred-stack-boundary=2 -fno-unit-at-a-time -march=i686 -Ii
nclude/asm-i386/mach-default -Wdeclaration-after-statement -DKBUILD_BASE
NAME=nvidia -DKBUILD_MODNAME=nvidia -DMODULE -c -o /tmp/selfgz16308/NVIDIA-L
inux-x86-1.0-7676-pkg1/usr/src/nv/nvidia.mod.o /tmp/selfgz16308/NVIDIA-Linux
-x86-1.0-7676-pkg1/usr/src/nv/nvidia.mod.c
ld -m elf_i386 -r -o /tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/s
rc/nv/nvidia.ko /tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/src/nv/n
vidia.o /tmp/selfgz16308/NVIDIA-Linux-x86-1.0-7676-pkg1/usr/src/nv/nvidia.mo
d.o
NVIDIA: left KBUILD.
-> done.
-> Kernel module compilation complete.
-> Installing both new and classic TLS OpenGL libraries.
-> Installing 'NVIDIA Accelerated Graphics Driver for Linux-x86' (1.0-7676):
executing: '/sbin/ldconfig'...
executing: '/sbin/depmod -aq'...
-> done.
-> Driver file installation is complete.
-> Running post-install sanity check:
-> done.
-> Post-install sanity check passed.
-> Shared memory test passed.
-> Running runtime sanity check:
-> done.
-> Runtime sanity check passed.
-> Installation of the NVIDIA Accelerated Graphics Driver for Linux-x86
(version: 1.0-7676) is now complete. Please update your XF86Config or
xorg.conf file as appropriate; see the file
/usr/share/doc/NVIDIA_GLX-1.0/README.txt for details.

After completing this step I do a few simple things in xorg.conf:

Change the driver from the default "nv" to "nvidia".
Comment out Load dri and Load GLcore in the xorg.conf file
Add Load "glx" to the xorg.conf file.
Start the gdm.

At this point I get the infamous error message:

"API Mismatch: NVIDIA kernel module is version 1.0.7667 and the X module is version 1.0.7676."

Well, that seems quite odd considering the Nvidia install log says I correctly installed version 1.0.7676.

Based on previous research it appears I have parts of both 1.0.7667 (nvidia kernel module) and 1.0.7676 (nvidia kernel module) installed. The only thing I could come up with was that the linux-restricted modules package was causing some kind of conflict. I proceed to uninstall that package with still no results.

I do not know how to get rid of the 1.0.7667 version that is apparently lingering on my system somewhere. I think if I could just delete it or delete the references to it I should be ok.

Any help is appreciated, frustration is telling me that installing a driver should be easy.

Thanks ahead,

Corey
shock56 is offline   Reply With Quote
Old 10-16-05, 06:28 PM   #2
shock56
Registered User
 
Join Date: Oct 2005
Posts: 2
Default Re: API Mismatch

Interesting, I came across the issue while I was waiting on you slow pokes. Just kidding. I realized that the 1.0.7667 nvidia-kernel-common package was still installed in the package manager. Surprising to me, I guess Ubuntu installs this package by default. Anyway, I removed it and now I am sitting pretty. Graphics look about the same as the default, but the gf can toy around with tuxracer now.

One thing I noticed was that after the reboot the "Initializing Modules" line in the Ubuntu boot screen is listed as "failed." I haven't been able to find anything in messages or dmesg to give me a hint as to what is failing, but everything appears to be ok functionally. This is probably a Ubuntu issue so I don't expect much of a response here, but if someone knows anything I'd be willing to listen.

Thanks,

Corey
shock56 is offline   Reply With Quote
Old 12-19-05, 11:30 AM   #3
rosslaird
Registered User
 
Join Date: Apr 2005
Posts: 1
Default Re: API Mismatch

Did you ever get this resolved?
I'm having the same problem.

Ross
rosslaird is offline   Reply With Quote
Old 12-21-05, 06:05 AM   #4
gerwindehaan
Registered User
 
Join Date: Jan 2005
Posts: 3
Default Re: API Mismatch

Similar issues here, when upgrading a Ubuntu Breezy to the latest 8174.

Before I used ubuntu packages with apt-get or synaptic to install a prefabricated (7677 version or something). Now I used the nvidia installer for the newer one. I received the incompatible version error in my Xorg log.

Somehow, the NVIDIA installer can't handle the correct removal of these packages.I did a manual removal of the ubuntu packages using
Code:
apt-get remove
. You can find the installed nvidia package names using
Code:
sudo dpkg -l "nv*"
After this I reinstalled the nvidia using the original installer.

Now my machine seems to boot correctly, but I'm experiencing other problems concerning tls.
gerwindehaan is offline   Reply With Quote
Old 12-21-05, 06:45 AM   #5
mo_x
Registered User
 
Join Date: Jul 2005
Posts: 77
Default Re: API Mismatch

You need to remove the packages with the --purge option.

Here is a short howto for installing the latest nvidia driver on Ubuntu.
- Install compiler etc. and linux headers.
Code:
sudo apt-get install build-essential
sudo apt-get install linux-headers-`uname -r`
sudo apt-get instal gcc-3.4
- Remove all packages related to nvidia driver with --purge option
Code:
sudo dpkg --purge nvidia-glx
sudo dpkg --purge nvidia-kernel-common
sudo dpkg --purge linux-restricted-modules-`uname -r`
- Run the installer script (you may need a different version).
Code:
export CC=/usr/bin/gcc-3.4
sudo sh NVIDIA-Linux-x86_64-1.0-8174-pkg2.run
mo_x is offline   Reply With Quote
Old 12-21-05, 11:15 AM   #6
ddaupert
Registered User
 
Join Date: Dec 2005
Posts: 4
Default Re: API Mismatch

I have same API Mismatch error, Kubuntu 5.1: 2.6.12-9-amd64-generic

>sudo dpkg --purge nvidia-kernel-common
>sudo dpkg --purge linux-restricted-modules-`uname -r`

QUESTION: I have EPoX 9NPA nForce 4 Ultra Motherboard as well as XFX GF 6600GT vid card. Is there any chance that running the purge commands would remove any nvidia modules needed by the motherboard, such that I woulnd't be able then to boot the machine?

I'm a bit newbie on module loading, unloading, etc, and completely new to Debian, so probably need some extra detail.

/dennis
ddaupert is offline   Reply With Quote
Old 12-21-05, 11:50 AM   #7
mo_x
Registered User
 
Join Date: Jul 2005
Posts: 77
Default Re: API Mismatch

The nvidia chipset and sata drivers are included in the kernel and are not in the linux-restricted-modules. It should be no problem.
mo_x is offline   Reply With Quote
Old 12-22-05, 09:30 AM   #8
ddaupert
Registered User
 
Join Date: Dec 2005
Posts: 4
Default Re: API Mismatch

Thanks, mo_x, for that info, it helps. But I run into dependency issues when running --purge cmds. I'm prevented from removing nvidia-kernel-common cuz it depends on linux-restricted-modules, and when I try to --purge linux-restricted-modules-2.6.12-9-amd64-generic, I'm prevented from doing that, told:

linux-restricted-modules-amd64-generic depends on linux-restricted-modules-2.6.12-9-amd64-generic

I used synaptic wizard to look at linux-restricted-modules-2.6.12-9-amd64-generic, found it depends on linux-amd64-generic. Also, when I look at linux-kernel-common using synaptic, it tells me in addition to removing the linux-amd64-generic and the two restricted module collections, but he'll also install linux-image-2.6.12-10-amd64-generic

I'm feeling a bit of vertigo at this point, not sure I should jump. Advice?

/dennis
ddaupert is offline   Reply With Quote

Old 12-22-05, 10:12 AM   #9
mo_x
Registered User
 
Join Date: Jul 2005
Posts: 77
Default Re: API Mismatch

I am not 100% certain but I think Ubuntu has upgraded the kernel from 2.6.12-9 to 2.6.12-10 (which I am running). You can first install linux-image-2.6.12-10-amd64-generic (or linux-image-2.6.12-10-amd64-k8 if you have an amd64 processor). If the system runs fine with this kernel then you can remove the 2.6.12-9 kernel.
After that try again to install the nvidia driver. If the --purge option does not work try the normal remove "dpkg -r". The important thing is that there is no nvidia-glx script in the /etc/init.d directory.
mo_x 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
Google's Linux Video Acceleration API: VAVDA News Archived News Items 0 06-01-12 05:50 AM
API mismatch Goddard NVIDIA Linux 2 05-18-12 05:43 PM
If You Can Copyright an API, What Else Can You Copyright? News Archived News Items 0 05-15-12 11:20 AM
The New X.Org Server Driver API Is Coming News Archived News Items 0 05-14-12 05:00 PM

All times are GMT -5. The time now is 04:52 PM.


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