# NVidia problem FATAL:Error Inserting nvidia [SOLVED]

## VStrider

After a kernel upgrade I cannot load the nvidia drivers. modprobe nvidia gives me

```
FATAL: Error Inserting nvidia (/lib/modules/2.6.14-gentoo-r4/video/nvidia.ko): Unknown symbol in module, or unknown parameter(see dmesg)
```

I greped dmesg and got several lines that go like this:

```
nvidia: Unknown symbol class_simple_device_add

nvidia: Unknown symbol class_simple_destroy

nvidia: Unknown symbol class_simple_device_remove

nvidia: Unknown symbol class_simple_create
```

These lines appear for 2 more times.

When compiling nvidia-kernel I also get similar warnings about unknown symbols. I tried removing and recompiling both nvidia-kernel-1.0.6629-r4 and nvidia-glx-1.0.6629-r6 but that didn't help. Removed nvidia.ko and recompiled, that didn't help either.

agpgart is enabled and i don't have any nvidia options enabled in the kernel.

My previous kernel also refuses to load the nvidia module with the same errors. I'm posting this from elinks on the console, so any help will be appreciated.Last edited by VStrider on Thu Dec 15, 2005 3:46 pm; edited 1 time in total

----------

## sethleon

Did you already try to do an:

```
ACCEPT_KEYWORDS="~x86" emerge nvidia-kernel nvidia-glx
```

this should give you the newest versions, maybe the older are not compatible with certain modules used in new kernel versions,

newest nvidia-version: 1.0.8174-r1

----------

## shrimp123

i believe u have just recompiled the kernel... or changed one of gcc/glibc.

try to boot into the new (current)kernel and recompile the drivers

----------

## VStrider

 *sethleon wrote:*   

> Did you already try to do an:
> 
> ```
> ACCEPT_KEYWORDS="~x86" emerge nvidia-kernel nvidia-glx
> ```
> ...

 

I tried 7174 and 8174. The latter doesn't even compile while the former gives me the same errors as 6629. I'll try a few more, though I think I'll still get the same errors. :-/

----------

## VStrider

 *shrimp123 wrote:*   

> i believe u have just recompiled the kernel... or changed one of gcc/glibc.
> 
> try to boot into the new (current)kernel and recompile the drivers

 

Yes, I 've done that already. modprobe nvidia throws the same errors on both my new (2.6.14-r4) and my old kernel (2.6.13-r5). I even tried emerge -P gentoo-sources, reemerged 2.6.13-r5, deleted nvidia.ko, deleted /var/tmp/portage/nvidia, made mrproper and recompiled kernel. nvidia still throws the same errors.

gcc is 3.4.4 and glibc is 2.3.5-r2. I upgraded gcc last week(with a full emerge -e system and emerge -e world), and didn't have any problems so far. I somehow don't think it's gcc or glibc, cause both my previous kernel and nvidia, succefully recompiled on gcc-3.4.4 and I was running X for about a week since the upgrade.

----------

## sethleon

I think you also minded to relink /usr/src/linux to you new kernel source ...

so if the emerge fails, then usually an error output is printed,

if you emerge the newest version, what error message is printed?

----------

## VStrider

 *sethleon wrote:*   

> I think you also minded to relink /usr/src/linux to you new kernel source ...

 

I have the symlink flag on, plus I always double check this.

 *sethleon wrote:*   

> if the emerge fails, then usually an error output is printed,
> 
> if you emerge the newest version, what error message is printed?

 

The latest one, throws this:

```

/var/tmp/portage/nvidia-kernel-1.0.8174-r1/work/NVIDIA-Linux-x86-1.0-8174-pkg1/usr/src/nv/nv-vm.c: In function `nv_vmap':

/var/tmp/portage/nvidia-kernel-1.0.8174-r1/work/NVIDIA-Linux-x86-1.0-8174-pkg1/usr/src/nv/nv-vm.c:817: error: too few arguments to function `vmap'

make[3]: *** [/var/tmp/portage/nvidia-kernel-1.0.8174-r1/work/NVIDIA-Linux-x86-1.0-8174-pkg1/usr/src/nv/nv-vm.o] Error 1

make[2]: *** [_module_/var/tmp/portage/nvidia-kernel-1.0.8174-r1/work/NVIDIA-Linux-x86-1.0-8174-pkg1/usr/src/nv] Error 2

NVIDIA: left KBUILD.

nvidia.ko failed to build!

make[1]: *** [mdl] Error 1

make: *** [module] Error 2

!!! ERROR: media-video/nvidia-kernel-1.0.8174-r1 failed.

!!! Function linux-mod_src_compile, Line 505, Exitcode 2

!!! Unable to make                   IGNORE_CC_MISMATCH=yes V=1 SYSSRC=/usr/src/linux SYSOUT=/usr/src/linux clean module.

!!! If you need support, post the topmost build error, NOT this status message.

```

While the other nvidia-kernels emerge, but in the end is says:

```

>>> original instance of package unmerged safely.

 * Updating module dependencies for 2.6.13-gentoo-r5 ... 

WARNING: //lib/modules/2.6.13-gentoo-r5/video/nvidia.ko needs unknown symbol class_simple_device_add

WARNING: //lib/modules/2.6.13-gentoo-r5/video/nvidia.ko needs unknown symbol class_simple_destroy

WARNING: //lib/modules/2.6.13-gentoo-r5/video/nvidia.ko needs unknown symbol class_simple_device_remove

WARNING: //lib/modules/2.6.13-gentoo-r5/video/nvidia.ko needs unknown symbol class_simple_create

 * Updating modules.conf ...

 * Adding module to moduledb.

>>> Regenerating /etc/ld.so.cache...

>>> media-video/nvidia-kernel-1.0.6629-r4 merged.

```

So it seems okish, but if i try modprobe nvidia, i get the fatal error on my first post.

Any idea what these warnings are and how to solve this?

----------

## VStrider

Problem solved! 

sethleon, you were right about installing the latest drivers. Although the latest ones don't compile on my system, I tried the latest release before 8174, that is 7676-r1 and it compiled without errors. 

I googled for this problem, though there isn't much about it, I found that apparently these symbols have been dropped from >=2.6.13 kernels. Older nvidia drivers use these symbols, so the options are either downgrade to a 2.6.12 kernel or upgrade to the latest nvidia drivers. Funny though, I was able to use 2.6.13 with my old nvidia drivers for a long time without problems. 

Thanks alot guys for your help.  :Smile: 

----------

