View Single Post
Old 02-09-03, 11:17 AM   #3
Registered User
Join Date: Sep 2002
Posts: 2,262

No, there is an incompatibility between the drivers as shipped and the 2.5 kernel backports that RedHat found it necessary to include in Phoebe's default kernel. The reason the drivers worked with your 2.4.20 is that the following features do not exist in 2.4.20:

There is now support for stuff like thread-local storage (aka TLS), and whatnot else. This probably isn't a problem unless you also use glibc 2.3 (though I could be wrong on that). Unfortunately, in order to do TLS, the kernel has to use extra segment registers in the x86 architecture (fs & gs). And these segment registers' values get clobbered by, you guessed it, the nVidia drivers.

The compilation problem (pte_offset) is a side effect of this. The kernel's definition of pte_offset changed to support TLS better (or for some other reason), and RH kept this change in their Phoebe kernels as well. The nVidia drivers call pte_offset with the old interface, which doesn't work.

There is no fix that nVidia has put out yet, because they don't support the 2.5 kernel (its interface changes too often to make it worthwhile). But seeing as RH saw fit to backport those changes into their Phoebe release, nVidia might want to hurry up on that one...

If you check around on this forum, someone posted a Phoebe HOWTO a while back. It involves patching your nVidia drivers, then passing extra options to the kernel or glibc that shut off TLS (and possibly some VM speedups, but I'm not sure on that one). The subject of the post was "RH Phoebe HOWTO" or something along those lines.

EDIT: Never mind, I went looking for that thread and didn't find it until page 4 or 5. Here's a direct link:
Registered Linux User #219692

Last edited by bwkaz; 02-09-03 at 11:23 AM.
bwkaz is offline   Reply With Quote