Is there an easy way to tell if a specific kernel version is compatible with a specific nvidia driver version? Barring that, is there a non-easy way?
I’m looking for a general answer, ie giving nvidia XXX.XX.XX can it be used with kernel X.XX.XX, although if that’s not possible, a specific answer based on the versions below.
This question came about because I recently noticed kernel 6.11.3-200.fc40 is available. I’m currently using kernel 6.10.12-200.fc40 and the older 550.90.07-1.fc40 nvidia driver without problems. I don’t have any particular issue with installing the 6.11.3 kernel, but I don’t want to upgrade to the 560.35.03 nvidia driver, so BEFORE I install the kernel I’d like to know if there’s way to tell if it will work with the older 550.90.07 nvidia driver.
The rpmfusion maintainer updates the nvidia drivers for each new kernel.
Its very rare to find that you cannot “just update” and have it all work.
FYI the recommended version of nvidia drivers is 560 not 550.
I doubt that anyone is trying to keep the old driver compatible with newer kernels.
I have assumed that you are using the recommended rpmfusion nvidia drivers. If that is not the case you need to talk to whoever maintains the drivers you are using.
Is there a specific reason that you do not wish that upgrade? Or is this a matter of preference?
AFAIK all the nvidia GPUs of the 10 series and newer work with the latest drivers and the latest kernels. I suspect if there are issues it is a matter of specific hardware configs that interfere and not either the kernel or the drivers.
I previously had a problem using the 550.67 driver with the 6.10 kernel. It ended up I needed to use at least 550.90 with the 6.10 kernel. Based on that problem, I asked the original question.
According to NVIDIA, for my GPU, the 550 is still listed as the “Recommended/Certified” driver. The 560 is listed as the “New Feature Branch” driver. Maybe it depends on the specific GPU?
Here’s the search page and what I used for the search criteria (doesn’t seem to be a way to get a link directly to my results page):
GeForce
GeForce RTX 30 Series (Notebooks)
GeForce RTX 3080 Lapop GPU
Linux 64-bit
English (US)
Because of problems with the 560 driver from RPM Fusion I manually installed 550.90.07 rpms from koji.rpmfusion.org. It’s my understanding these are the drivers published by RPM Fusion (but I could be wrong). I had to go to koji simply because the older 550 driver was no longer available via RPM Fusion. And yes, if I’m resolved to use 550, I probably should be using 550.120, but I haven’t had problems with 550.90 and haven’t had the time to upgrade to 550.120.
For more details on the history of my problems with 560 and what I did to “solve” it (not really a solution, just a downgrade to 550 so things work), you can see this thread.
Yes… most games freeze when I tried to use the 560 driver. See this thread for more details if you wish. Downgrading to 550 fixed the problem, so for the time being I’m sticking with 550.
This question wasn’t really about if I should be using 560 or not. It’s about seeing if there’s an easy (or non-easy) way to determine if a specific nvidia driver version is compatible with a specific kernel version BEFORE upgrading the kernel and/or nvidia driver. Maybe the answer is no and while that would be unfortunate I guess it is what it is.
Even if the module compiles ok for a new kernel version it doesn’t mean it wont have runtime issues.
550.120 has a runtime fix (fbdev) for the 6.11 kernel.
That sounds more like a bug to me. I wasn’t expecting something that would detect bugs or unknown/unexpected problems, I was only hoping for a way to check for known incompatibilities.
Hardware that was designed/released after a particular driver was created will often not be fully supported (or may not be supported at all).
Release dates of hardware and the drivers should be compared to confirm compatibility.
Also check on the manufacturers web site for suggested drivers for particular hardware. There you should find the definitive answer about required drivers.
The kernel, on the other hand is always in development with new versions released frequently, and the drivers must be compiled for that specific kernel version. As Leigh said above, there are often patches and bug fixes that may or may not work for your specific system.
Users are the best source for spotting those issues so you could do your own testing and if upgrades fail then take action to return to a known good configuration. (And report the failing condition so it can be addressed and fixed.)
One good source for reported issues or successes is LHDB