Install the nVidia 8178 driver with linux kernel 2.6.16 and higher
From OoKoo.org
Problem
On the new kernels (starting version 2.6.16), some functions (which were deprecated) were removed. This is a problem for the drivers which were still using those functions, like the nVidia graphic driver.
The changes which happened on the 2.6.16 and newer kernels which blocks nVidia driver are:
- Function remap_page_range was removed
- Function pci_find_class was renamed to pci_get_class
- The struct struct rlimit was changed
This guide is for those who use a nVidia graphic card with a 2.6.16 kernel.
Guide
The first step is to locate the nVidia driver. Currently the last version is the 8178, and is not compatible with 2.6.16 kernels. NVidia will probably release a working driver soon, making this guide useless.
The last version driver can be downloaded from: http://www.nvidia.com/object/unix.html
Once you've checked there's no newer driver, type the bold commands in the following transcript:
Mori:/tmp/test$ wget http://download.nvidia.com/XFree86/Linux-x86/1.0-8178/NVIDIA-Linux-x86-1.0-8178-pkg1.run (wget downloading the file) Mori:/tmp/test$ sh NVIDIA-Linux-x86-1.0-8178-pkg1.run -x Creating directory NVIDIA-Linux-x86-1.0-8178-pkg1 Verifying archive integrity... OK Uncompressing NVIDIA Accelerated Graphics Driver for Linux-x86 1.0-8178..................................... Mori:/tmp/test$ cd NVIDIA-Linux-x86-1.0-8178-pkg1 Mori:/tmp/test/NVIDIA-Linux-x86-1.0-8178-pkg1$ curl -s http://ookoo.org/files/nvidia_8178_kernel_2.6.16_fix.diff | patch -p1 patching file usr/src/nv/nv-linux.h patching file usr/src/nv/os-interface.c Mori:/tmp/test/NVIDIA-Linux-x86-1.0-8178-pkg1$ ./nvidia-installer
Now, you have the usual nVidia installer. Just install the driver as usual (remember to shutdown your X server). The compilation process should not crash (at least not because of the kernel 2.6.16+).
