Linux kernel vs nvidia driver version

Since the Nvidia search tool can identify your current driver by your current kernel and configuration, there must be a table or database that shows the association between kernel revisions and driver revisions. I am try to find out what Linux kernel(s) supports the Nvidia driver version 525.105.17.

Thank you.
Mark

And yes, I am currently Using the Nvidia driver release 470.239.06 with the recently updated kernel 5.15.0-101-generic on Linux Mint 23.1. But, I have options to use other “newer” kernels.

Whether or not the nvidia driver and kernel modules will work with a specific kernel version is based on how their installation is handled.

Nvidia drivers updates in linux are based on their windows counterparts development, not the linux kernels updates.
The way the installation of nvidia drivers is handled by various distributions makes them dependent on specific kernel versions, with for example DKMS being dependent on specific kernel versions in order to build correctly.

The way nvidia is installed by linux distributions and via the nvidia drivers from nvidia, in other words is different. Typically I’ve seen incompatibility between kernels and nvidia drivers in the scenario of using distributions packaging schemes, and not by going through the nvidia website to install their drivers direct from the source.

So again, as the kernel updates, you’ll see derivative kernels in the various distributions update. And in parallel, as the windows nvidia driver is updated, you’ll see the linux variant is updated.

When linux distributions make up their packages, for example installing nvidia, it’s based on the other components in their system like the kernel, which is why we have dependency issues in that scenario.

That’s my understanding, based on my experience, as a user, not a developer.

And yes, I am currently Using the Nvidia driver release 470.239.06 with the recently updated kernel 5.15.0-101-generic on Linux Mint 23.1. But, I have options to use other “newer” kernels.

470 and the 5.15 kernel is actually my favorite combo with nvidia and the kernel, because they were very speedy and performant. Updates to the driver and kernel don’t actually improve performance directly by themselves, and generally incorporate new superfluous features for specific scenarios, such as supporting new hardware, that doesn’t concern most users to begin with.

Whether or not you can install newer drivers depends on how they are designed to be installed. If your distro has made them capable of installing with your kernel version, in other words, then you can do it. You can also try using the nvidia installer directly instead, from it’s website, to get the newest version. That is the standard way to install drivers, is to actually go to the original manufacturer, instead of a third party like your distro’s repository.

The real question is, whether or not your linux distribution supports nvidia, and using their source directly, for their users, apart from their packaging schemes.

The same applies to the linux kernel. Does your distribution, or any other, support installing the linux kernel from it’s own original source? And if they don’t, we have to ask why not?

So, in sort of a roundabout way, you’ve told me that a database or table that defines linux kernel revisions with nvidia driver versions isn’t relied on and then explained that there does exist a strict dependency on matching kernel to driver. XD I’m sure you can acknowledge the irony.

Once again, here is my point. I understand that your best intention is to go with the standard. As you said, 470 and 5.15 are a good combination. I can almost play CounterStrike2 in native Linux mode, but their decision to move to Source 2 made it a little worse for older video cards like the GTX-660. I know this Kepler card is at the end of it’s service life, coming up in Sept I believe. We’ve only been getting security updates for some time now. When I saw that the 525 driver supports this card and many other Kepler cards, it at least gave me hope that if I ever migrate to a newer kernel such as 6.5.0-26 which is viable until August 2024, the 525 nvidia driver might still be supported for a little longer. I’ve got a feeling that the 525 driver - at the GTX-660 level - is not much different than the 470, otherwise we’d be hearing something about new features, new bugs, better compatibility, better performance, loss of functions, worse performance or failure to work in some program or another. So, my guess is that the Kepler function of these to drivers is more or less the same - just getting security updates.

Another reason is that I was told that the 5 series kernel will be the last one supporting the 470 nvidia driver. So, I hope you can now understand why I am concerned about how the kernel vs driver is determined and by who. If I am to believe the research I have been following, the nvidia driver search tool is doing one of two things:
Interrogating the requesting computer configuration, kernel version, graphics adapter family and model number and then applying said info to some database…

  • OR -
    It just simply looks at the graphics adapter and the kernel number and spits out the 470 driver.

So, either way, what would make it say "Nvidia Gameready Driver version 525?

No matter how it’s done, there must be a concise explanation for how it determines the actual driver selection.
Database?
Algorithm?
A simple “This” because of “That”

We already know three things.
5.xx may be the last kernel to support Nvidia driver rev 470.
5.xx does not and will not for the foreseeable future, support Nvidia driver rev 525.
5.15 will be supported until April 2027

(let me rephrase my query, maybe it will make more sense…)
If I decide, as other people have done, to migrate to kernel version 6.5 or higher, I need to know ahead of breaking my system, which Nvidia driver revision will be used to support my EVGA GTX-660 OC Kepler graphics card?

Nvidia says that the 525 driver will support the family and the specific card, there has to be some key piece of information that results in “linux computer configuration X” results in Nvidia driver 525.

I’ll take this back to the Linux Mint forums and to Ubuntu forums to see what they have to offer. I’m just afraid they will send me back here to ask the same question over and over again. lol

peace
Mark

That is based on how things we’re tested, and the unique considerations in those scenarios.

I’m not the best person to answer all your questions, I just wanted to offer you my ideas.

Thanks for the reply.
Bangs head on desk…

I’m losing my faith in human beings and their ability to grasp simple ideas and reply in context. I’m not picking on you, but even your reply absolutely confirms that somewhere, in this universe and this spacetime, there exists a compilation of what drivers work with which kernels. Or, let me put it another way: a compilation of what kernels work with which drivers.

(in my best Veruca Salt)
“And I want it now!” 😆

I was and still am, under the impression that the Nvidia Driver Search tool, collects the data needed to determine what driver(s) to offer the user. So, OK, I’m using 64 bit linux abd kernel 5.15. And it offeres me the Nvidia 470 driver.

If I were using kernel 6.5, and a number of people are, which Nvidia dtiver would it offer?

I await anyone’s reply.

Mark

I’ve never seen a simple table like you want. That would be too easy. Maybe part of the problem is the Nvidia README is unhelpful and says “2.6.32 or later” (LOL). Another part of the problem is that distros patch their nvidia packages at different times. Some will stop patching old Nvidia series’ sooner than others. So a universal table might not be accurate.

Also, I believe that driver utilities just look at the PCI ID and match that to the driver version(s). I don’t think they’re smart enough to account for kernel version too. For example, on Ubuntu22/Mint 21, when the 6.5 kernel came out, it broke compatibility with the 390 legacy driver, but the driver utility still offers to install 390 for matching cards, even though the install fails.

To answer your question more directly, 470 and 525 work with kernel 6.5 in Mint 21
You should also be able to use 535 in Mint 22: Bug #2049635 “Roll UDA & ERD drivers from 525 to 535” : Bugs : nvidia-graphics-drivers-525-server package : Ubuntu
“All cards supported by 525 series of the driver are supported by the 535 driver, thus there is no loss of functionality”

Thankyou for the response.
The “list” I was referring to might have been “anything”: a database, a Post-It. While your answers are plausible and probably as good as I will get*, it does not attempt to explain how the damned Nvidia Driver Tool works for Linux.

Of course, doing that might infer a greater intellect at work or cause the website to implode. 🤣

*I was told that the 5.xx series would be the last kernel to support the 470 driver. So, you might understand my concern a little better. 🤔

Sometime soonish, I hope to replace the tired old GTX660 OC with a couple of generations newer GTX1060 SSC. I have the board, but it’s currently doing time in another computer.

“While your answers are plausible and probably as good as I will get*, it does not attempt to explain how the damned Nvidia Driver Tool works for Linux.”
I don’t know. It’s a Python scricpt, and I never got into Python, so I can’t tell you exactly how it works. Like I said, I think it looks at The PCI ID’s and not the kernel.

"I was told that the 5.xx series would be the last kernel to support the 470 driver. "
You were told wrong. The Nvidia 470 driver is available in Ubuntu 24.04 with 6.8 kernel. So that’s good until 2029. You seem to be fussing over nothing.

“You were told wrong. The Nvidia 470 driver is available in Ubuntu 24.04 with 6.8 kernel. So that’s good until 2029. You seem to be fussing over nothing.”

As misinformed as I was over in Linux Mint Forums by people seemingly in the know, I was fussing over a potentially critical situation, as I do follow updates and upgrades whenever possible.

I guess I will have to go back and “educate” my informant. ;)

peace
Mark

Regarding Linux kernel compatibility with various Nvidia driver revisions.
If you are interested, I’ve discovered something when attempting to switch from nvidia-535-driver package to nvidia-545-driver package under Linux Mint 21.3 (ubuntu 22.04.2…).

Here goes.
Simply choosing the offered 545 package in Linux Mint 21.3 failed and failed for specific reasons.

And the good news is, it absolutely supports what LinuxGaming81734 was trying to get across.

The install failed because:
There are specific kernel / kernel headers / libraries / tools that work with specific Nvidia driver revisions. Most of those caused a variety of errors when looking at the resultant nvidia-bug-report.log.gz (I will include)

HINT-HINT-HINT!!! Start at the bottom and search backward for “Failed”.

**$ sudo nvidia-bug-report.sh.gz**

(facepalms)
This shell script spits out the entire process that includes every step taken on the road to a successful install, or a puddle of tears and piles of torn out hair.

I found the clues at this incredibly insightful web-page that has a mind boggling amount of information and explanations. Waaayyy at the bottom, there is an instruction to use an existing script for getting the above nvidia-bug-report.log is divulged in a simple casual way that must have defied all standard internet search engines specifically to annoy ME!!! >.<
lol
https://github.com/RocketCityDynamics/Success-with-Nvidia-545-drivers-in-Ubuntu-22.04-LTS

To quote Bugs Bunny…“The irony of it all…”

So, this simple switch from 535 to 545 using Linux Mint 21.3 with kernel 5.15.0-107-generic and an evga RTX 2070 Super caused quite a number of errors that were fairly easy to find and decipher.

kernel revision - according to information I found, the nvidia-driver-install-meta package is/was supposed to drag in the correct kernel and kernel support files - kernel.image, kernel.headers and kernel firmware support tools. However, since the kernel offered would have been a somewhat significant digression in revision levels (5.15.0-97 I believe), the system may have shrugged and said, “Nope!”.

libraries - lightdm inxi nvidia-settings appmenu-gtk3-module nvidia-settings nvidia-smi nvidia-xconfig

tools - this includes cuda computational libraries by specific nvidia driver major revision

probably a few more…“things

I have to admit, that having come from a long-standing opinion that “newer-stable-versions” of any code, always meant “better / safer / more secure”, the urge to upgrade ahead of problems is strong.

That being said, I have reasons with the current status of Linux desktops now causing changes because of wayland, may have also created changes it the standard driver code as previously unsupported options and features suddenly become significant. Although, I do not currently use the wayland architecture, the day is coming when X11 will be completely retro. Some top end Linux distros have already made the move.

It may also affect / improve issues with gaming under Steam Proton, which is another bag of worms. As I’ve said, I play Counterstrike2 (native) and Elite Dangerous Odyssey (proton) and each of these games get updates on a somewhat-frequent-very-irregular schedule.

nvidia-bug-report.log.gz (131.4 KB)

Simply choosing the offered 545 package in Linux Mint 21.3 failed and failed for specific reasons.

Specifically, you should not use 545 these days, because it’s not maintained anymore. Use 535 or 550.

ERROR: modpost: GPL-incompatible module nvidia.ko uses GPL-only symbol 'rcu_read_unlock_strict'

Thanks for the quick update.

lol that presents even more problems as 550 is not offered under this kernel.
I may have to stick with 535 or upgrade to 6.xx kernels to see what works there.