# "(EE) NVIDIA(0): Failed to initialize the NVIDIA ker[SOLVED]

## illegalbuds

```
Q: My X server fails to start, and my X log file contains the error:

   "(EE) NVIDIA(0): Failed to initialize the NVIDIA kernel module!"

A: Nothing will work if the NVIDIA kernel module does not function

   properly.  If you see anything in the X log file like "(EE)

   NVIDIA(0): Failed to initialize the NVIDIA kernel module!" then

   there is most likely a problem with the NVIDIA kernel module.

   First, you should verify that if you installed from rpm that

   the rpm was built specifically for the kernel you are using.

   You should also check that the module is loaded ('/sbin/lsmod');

   if it is not loaded try loading it explicitly with 'insmod' or

   'modprobe' (be sure to exit the X server before installing a new

   kernel module).  If you receive errors about unresolved symbols,

   then the kernel module has most likely been built using header files

   for a different kernel revision than what you are running.  You can

   explicitly control what kernel header files are used when building

   the NVIDIA kernel module with the --kernel-include-dir option (see

   `sh NVIDIA-Linux-x86-1.0-6629-pkg1.run --advanced-options`

   for details).

   Please note that the convention for the location of kernel header

   files changed approximately at the time of the 2.4.0 kernel release,

   as did the location of kernel modules.  If the kernel module fails to

   load properly, modprobe/insmod may be trying to load an older kernel

   module (assuming you have upgraded).  cd'ing into the directory with

   the new kernel module and doing 'insmod ./nvidia.o' may help.

   Another cause may be that the /dev/nvidia* device files may be missing.

   Finally, the NVIDIA kernel module may print error messages indicating

   a problem -- to view these messages please check /var/log/messages, or

   wherever syslog is directed to place kernel messages.  These messages

   are prepended with "NVRM".
```

I got this from the NVIDIA docs and I don't know Gentoo very well to interpret all this.

modprobe lsmod <-- failed

ls /dev/nvidia* <-- no files found

What should I do?

----------

## idkwiam187

Do you have the nvidia module listed in the "/etc/modules.autoload.d/kernel-2.6" file?

If not, try: 

```
modprobe nvidia
```

before starting X.  Having "nvidia" listed in /etc/modules.autoload.d/kernel-2.6 will make it load the nvidia module on boot.

Another possible cause for this would be if you updated your kernel without re-emerging the nvidia-kernel package afterwards.

Hope this helps!

----------

## illegalbuds

yes, i did modprobe nvidia. i followed the guide at www.gentoo.org/doc/en/nvidia-guide.xml

i actually solved my problem by searching the forums and finding the topic about "failed to load nvidia" or w/e.

my problem was that the nvidia files didn't exist in /dev so i ran this shell script

```
#!/bin/sh

error() {

  echo "$(basename $0): fatal error, $1 failed"

  exit 1

}

if [ ! -c /dev/.devfsd ]; then

  for i in 0 1 2 3 4 5 6 7; do

      node="/dev/nvidia$i"

      rm -f $node

      mknod $node c 195 $i || error "mknod \"$node\""

      chmod 0666 $node     || error "chmod \"$node\""

  done

  node="/dev/nvidiactl"

  rm -f $node

  mknod $node c 195 255    || error "mknod \"$node\""

  chmod 0666 $node         || error "chmod \"$node\""

fi

if [ -d /etc/udev/devices ]; then

  for i in 0 1 2 3 4 5 6 7; do

      node="/etc/udev/devices/nvidia$i"

      rm -f $node

      mknod $node c 195 $i || error "mknod \"$node\""

      chmod 0666 $node     || error "chmod \"$node\""

  done

  node="/etc/udev/devices/nvidiactl"

  rm -f $node

  mknod $node c 195 255    || error "mknod \"$node\""

  chmod 0666 $node         || error "chmod \"$node\""

fi

exit 0
```

----------

