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.
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
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?
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.