Luis Chamberlain sent out the modules changes today for the Linux 6.6 merge window. Most notable with the modules update is a change that better builds up the defenses against NVIDIA’s proprietary kernel driver from using GPL-only symbols. Or in other words, bits that only true open-source drivers should be utilizing and not proprietary kernel drivers like NVIDIA’s default Linux driver in respecting the original kernel code author’s intent.
Back in 2020 when the original defense was added, NVIDIA recommended avoiding the Linux 5.9 for the time being. They ended up having a supported driver several weeks later. It will be interesting to see this time how long Linux 6.6+ thwarts their kernel driver.
Riddle me this, why is there such a thing as proprietary drivers for anything? Especially consumer facing products like this?
Don’t you want anyone and anything using your product in any situation? Help me understand NVIDIA’s bit with this?
I assume nVidia have licensed other code that they don’t have the rights to distribute the source code for.
I get what the GPL fans want here, but it’s just going to lead to a gimped driver, no driver, or an even larger shim between the open and closed source bits. The Linux market is too small for nVidia to care.
The Linux market is too small for nVidia to care.
The Linux gaming market is too small for Nvidia to care, but the GPU computing market isn’t.
So we can add “use an older kernel” and “use a modified kernel with that protection removed” to the list of options.
Using an older kernel isn’t a long-term solution. And according to the kernel devs, either using and older kernel in that way or modifying the kernel to remove these protections still violates the license even if it bypasses the technical protections.
(I’m guessing Nvidia will keep shimming and rely on either not being sued or winning the lawsuit.)
deleted by creator
Oh wow the comments on Phoronix for this one are bonkers.
From what I understand (because it wasn’t clear to me from either of the TLDRs posted here) Nvidia’s proprietary graphics driver has been calling parts of the kernel that they shouldn’t be, because their driver is closed source.
These seem to be parts of the kernel that another company may own patents to, but has only licensed it to the kernel for free use with GPL open source code only, i.e. closed source/proprietary code is not allowed to use it.
Nvidia seems to have open sourced a tiny communication shim to try and bypass this restriction, so their closed source driver talks to the shim, and the shim talks to the restricted code in the kernel, that Nvidia does not have a license to use. This is a DMCA violation, hence why the Kernel devs are putting in preventions to block the shim, as far as I can see.
I don’t understand the small minority of commenters there defending a la soulless corp Nvidia, who is blatantly in the wrong here. Some commenters have gone as far as to call the Linux kernel maintainers “zealots”, would not be surprised if they are alts for Nvidia devs…
Edit: typo
Then isn’t the correct solution to sue Nvidia?
It’s a legal issue with a legal solution.
You dont sue someone with deeper pockets than you.
This is what’s wrong in so many countries.
Yeah probably, but Nvidia can afford lawyers and delays for years. Much longer than any oss group could afford
Perfect timing buying an AMD card yesterday to replace my old NVidia. Installed today, works like a champ. Issue resolved
I’ve had a mixed experience with my newer AMD card, and that’s being charitable.
What were some of the positives and negatives? Me personally, I have an RDNA2 card and got bitten by the gamma being too dark on hardware cursors (now resolved) and memory clock stuck at 1 GHz with some refresh rates (workaround is not to use refresh above ~144 Hz).
I have an RDNA3 card (upgraded from a 1080) and am running a multi-boot triple-head setup with mixed refresh rates (60, 144).
Pros: most things work and work well. Installation of the physical card went without a hitch and it was relatively simple to install the drivers. No issues with web video, streaming, video encoding, or standard use.
Cons: mesa, amdgpu, and Windows drivers are all lacking significant features - I am still unable to reliably control fan curves/speeds, clock speeds, etc. FreeSync is unusable as well. I have also been experiencing regular crashes on certain games (BG3, Apex Legends, etc.) and support has been nonexistent, despite similar complaints from other users. When the card does crash, it usually results in a ring timeout and an accompanied total session crash. AMD does not seem to be responsive to these issues in either their official forum or any other space where people are lodging complaints.
The hardware seems fine; the drivers are the main issue. If I had to do it over again, I’d hold my nose and buy NVIDIA.
EDIT: regarding the cursor issue, I’ve had to switch to a software cursor on Linux. The hardware cursor wasn’t showing up at all.
Regarding game-specific issues, it seems a lot of problems stem from either a greedy low power mode or DirectX issues. I’ve had to set udev rules to alleviate some of my issues, but it hasn’t solved everything.
EDIT 2: For anyone who comes across this post, it seems like the vast majority of the crashes on linux have been resolved as of kernel 6.7. Still lacking fine-grained control over fans/clocks, but stability seems much improved.