This is the best summary I could come up with:
The Linux 6.6 modules infrastructure is changing to better protect against the illicit behavior of NVIDIA’s proprietary kernel driver.
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.
Given that symbol_get was only ever intended for tightly cooperating modules using very internal symbols it is logical to restrict it to being used on EXPORY_SYMBOL_GPL and prevent nvidia from costly DMCA circumvention of access controls lawsuits.
Luis Chamberlain further added in today’s pull request: "Christoph Hellwig’s symbol_get() fix to Nvidia’s efforts to circumvent the protection he put in place in year 2020 to prevent proprietary modules from using GPL only symbols, and also ensuring proprietary modules which export symbols grandfather their taint.
The circumvention tactic used by Nvidia was to use symbol_get() to purposely swift through proprietary module symbols and completley bypass our traditional EXPORT_SYMBOL*() annotations and community agreed upon restrictions."
Back in 2020 when the original defense was added, NVIDIA recommended avoiding the Linux 5.9 for the time being.
The original article contains 476 words, the summary contains 174 words. Saved 63%. I’m a bot and I’m open source!
This is why Linux will always struggle to be mainstream. They can’t shake the grip of GPL. Forcing open source at gun point just alienates people.
They can’t shake the grip of GPL.
That’s the point. They don’t want to shake the grip of GPL. Nor should they, linux is already mainstream, being the most used kernel in the world.
deleted by creator
Hey let a man dream of a Linux freed from the exclusionary ideology of GNU. And if not, well you guys are more than welcome to hole up in your “No closed sourced allowed fort.” I and others will just move to the equally capable BSD Unixs
Ok, you do that. The rest of us will be here on lemmy which is licensed under copyleft
deleted by creator
Brave
It alienates nvidia. Are any other mega-corps being difficult enough to cause problems with linux?
As for its struggle to become mainstream (I assume you refer to desktop), I’d credit that to Linux not being commercial. And hence not having a marketing department. As soon as you DO market it, it takes off like a rocket. (Android, ChromeOS, SteamDeck)
Good idea, lets give even more leeway to giant corporations and allow them to break standards, surely this will not set up a dangerous precedent.
Thank you for all the replies. Really should me how boned Linux is. And that alot of you have absolutely no idea how the GPL works. If you call a GPL function, the calling code MUST be GPL too.
Afaik, you only need to take GPL into consideration if you distribute GPL software. So if you use the os glibc, you can call into it without having to disclose your source code.
Hmmbiut maybe thats just LGPL bekng different. I gotta read GPL completely some time
deleted by creator
The kernel isn’t requiring the driver be GPL.
Nvidias driver straight up violated the license by talking to parts of the kernel it wasn’t legally allowed to talk to, by shipping its own tiny open source shim to sit between the proprietary and open source parts they wanted to illegally have interoperate.
This is a case of nvidia straight up actually breaking the law with a literal hack. Prompting linux into implementing new security measures.
The shim module smuggles GPL-only kernel symbols into the non-GPL binary blob. Because the actual module using those symbols is not GPL compatible this violates the GPL license.
From Linus Torvalds mouth:
anybody who were to change a xyz_GPL to the non-GPL one in order to use it with a non-GPL module would almost immediately fall under the “willful infringement” thing, and that it would make it MUCH easier to get triple damages and/or injunctions, since they clearly knew about it.
In short, nvidia is playing with “please sue me” button.
I’ll add that to the list of reasons to hate nvidia.
The sad part is they are almost a monopoly
Big company violates copyright law, kernel devteam catches heat.
What else is new.
Windows has components other companies are not allowed to use too. Why should it be different on Linux.
deleted by creator
Windows actually doesn’t allow any driver to work fully. We would still be in the wild west that DOS and Windows 9x drivers were.
Windows has a massive quantity of components only Microsoft products can use, or can only be used in a certain way. A third-party application loading them might risk their developer keys being revoked without a officially signed license of usage, if the keys are even present. But most situation end up with the software getting blocked by Defender or Smart Screen or the user’s Windows install being considered non-genuine. This is not only for security, but also to protect the license of the many components Windows is using.
You see no meltdown from Windows users because most don’t care when Microsoft tightens their usage rules. Linux users tend to be more tech savvy due to the need of curiosity to leave the Windows ecosystem, meaning they can care about this because they also tend to be actual part of the community, instead of being strangers or passerbys.
deleted by creator
I don’t think I mentioned CUDA.
deleted by creator
Then there’s AMD…
We sane ones must stick together. I don’t know why it’s so hard for people to understand that they can’t force Nvidia to go open source at gun point. They just move elsewhere