Installing NVidia Driver on SMP Kernel
Willy Sudiarto Raharjo
28 November 2006
0 comment

Introduction

Nowadays, usage of SMP (Symmetric Multiprocessing) architecture on a multi processors computer has been a common fenomena and it's not only used on servers, but also expandable to home user's desktop and also workstation. The reason behind all of this is because the price is getting cheaper and cheaper as time goes by and new technology become available.

You all know that the kernel is the one who is responsible for all activities happening on your computers, and it will try to control what is in your computer system internally. This also means that the kernel is the main focus when you tried to have a multiprocessors computer detected and working properly. When the kernel doesn't detect them, it will not be activated, thus you don't get the benefit of it at all.

Most modern Linux distributions (including Slackware) have include a SMP kernel (starting Slackware 11.0) which can detect and activate the SMP features if the system is available, so you don't have to reconfigure them manually, but some of them doesn't give the correct configuration file, so when we want to build some modules which needs to have the correct kernel configuration, it fails, since the configuration file is still refering to the non-SMP configuration. On this article, i will give a simple solution on how to reconfigure your kernel configuration so that installation of new modules can be continued. In this article, i will use Slackware 11.0 installation and also NVidia driver as the example.

Hack Time

This article assume that you have installed the SMP kernel and usually it has a smp part on the package name, for example 2.6.17.13-smp kernel in Slackware 11.0. Next step is installing the kernel-source from the original 2.6.17.13 kernel version which is included by default. This kernel source doesn't have any information about the SMP features, but that will change as you continue to read this article and update them.

After installing the kernel-source package, go to the directory by typing

cd /usr/src/linux-2.6.17.13

and then copy the default generic SMP configuration file into this directory and name it .config

cp /boot/config-generic-smp-2.6.17.13 ./.config

Next step is to reconfigure the kernel using the old configuration file by typing

make oldconfig

It will read all of your .config file and will use them to rebuild the new kernel. At this time, the kernel will still be configured as non-SMP version. You can look the information by typing

cat include/linux/version.h

You will get an information like this

#define UTS_RELEASE "2.6.17.13"

This is the reason why compilation of new modules will fail, since it still refer to the non-SMP version, so the NVidia installer will not detect the kernel-source correctly, even though you have the correct kernel-source package. You will need to type this command to update them

make include/linux/version.h

You will have an output of this command like this

CHK include/linux/version.h
UPD include/linux/version.h

Now you can look again at the include/linux/version.h file and you will have the output of

#define UTS_RELEASE "2.6.17.13-smp"

Now you can start installing the NVidia driver and the installer will detect the kernel-source correctly. That's all folks. Enjoy your newly system with the SMP kernel and also NVIdia driver installed. You will be able to play 3D-games nice and smoothly, such as Tux-Racer.

Conclusion

There's no significant different between installation of NVidia driver on non-SMP or SMP kernel in Linux, since the only difference is only at the configuration information.

Acknowledge

I got this information from LinuxQuestions Forum. The credit goes to AGX.

Last Update : 7 March 2007 :: 15:40:33

Comments

No comments yet

Post Your Comments

Your Name: *Comment:
Kode Rahasia

*Write code above:
Note: * denotes required field