this post was submitted on 30 Aug 2023
719 points (98.6% liked)

Linux

48130 readers
455 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

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.

you are viewing a single comment's thread
view the rest of the comments
[–] intelati@programming.dev 71 points 1 year ago (3 children)

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?

[–] eltimablo@kbin.social 73 points 1 year ago (2 children)

Driver code might expose some underlying secret sauce they're using in the hardware. That's the justification they always used to give, at any rate. At this point, though, it's probably some code they've inherited from an acquisition that has a bunch of legal encumbrance stopping it from being open sources.

[–] pastermil@sh.itjust.works 2 points 1 year ago* (last edited 1 year ago)

If they have to rely on obscuring stuff on their user side to keep their secret sauce, I'd say they're bad at it.

This is coming from someone who deals with APIs for living.

[–] apt_install_coffee@lemmy.ml 15 points 1 year ago* (last edited 1 year ago) (1 children)

Likely a combination of 4 things:

  1. They have third party firmware in their blobs that they are under NDA regarding the source code.

  2. They believe in the source code is a large part of their success and don't want to reveal it.

  3. They believe giving out the source code will allow many inferior variants of the software, impacting their brand.

  4. Control; the more source code they have in mesa the more of their code can be rejected by mesa. Keeping their stuff as blobs allows them to put in whatever hacks they want.

[–] uis@lemmy.world 4 points 1 year ago* (last edited 1 year ago) (1 children)
  1. They can open their code without merging into mesa

  2. They don't want you to use "old" GPUs

[–] apt_install_coffee@lemmy.ml 1 points 1 year ago (1 children)

Sure but why open their code without getting the integration benefits?

[–] uis@lemmy.world 3 points 1 year ago* (last edited 1 year ago)
  1. Getting to use GPL-only symbols
  2. Still much easier for distros
  3. Example of drivers

And again we are talling about code not being rejected as main goal.

[–] Blackmist@feddit.uk 12 points 1 year ago (8 children)

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.

[–] ArbitraryValue@sh.itjust.works 40 points 1 year ago (1 children)

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.

[–] Blackmist@feddit.uk 2 points 1 year ago (2 children)

So we can add "use an older kernel" and "use a modified kernel with that protection removed" to the list of options.

[–] ArbitraryValue@sh.itjust.works 14 points 1 year ago* (last edited 1 year ago) (1 children)

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

[–] maynarkh@feddit.nl 2 points 1 year ago

As long as they get support for it. Big corps don't buy anything without 7 layers of scapegoats to point at.

[–] You999@sh.itjust.works 19 points 1 year ago* (last edited 1 year ago) (2 children)

The Linux community is literally Nvidia's biggest market. The current Linux market share in data centers is currently estimated to be 77%.

[–] Zatujit@reddthat.com -4 points 1 year ago

Sure but they don't play 3d video games do they?

[–] Zeth0s@lemmy.world 12 points 1 year ago (1 children)

All ml, ai, hpc is done on Linux. They are getting a lot of money because of the hype.

They need Linux drivers. No way hpc can be done on windows. But it can be done on amd

[–] lemmyvore@feddit.nl -1 points 1 year ago (1 children)

They don't have to offer Linux drivers for free to the general public though. Ask yourself why they do that.

[–] Zeth0s@lemmy.world 3 points 1 year ago* (last edited 1 year ago)

The problem is not mine. Is theirs. They want to use functionality written by others with certain requirements (i.e. that using that code requires disclosing the source code).

If they are not happy with that, that's fine. They shouldn't use those functionalities.

Problem is that they depends on Linux kernel for their biggest business (data centers). If they don't support linux, market will shift to amd. As ML user, I am absolutely fine. I can use amd for our gpu cluster. I absolutely cannot use a non linux OS.

That's their problem, not linux maintainers' problem

[–] rikudou@lemmings.world 9 points 1 year ago* (last edited 1 year ago)

With GPUs being used for AI stuff and all sane people using Linux for servers, no, Linux market isn't small at all for Nvidia.

[–] BURN@lemmy.world 9 points 1 year ago

That’s all I see happening too. The Nvidia Linux drivers will just get worse and not solve anything.

It’s already a huge pain in the ass to use the proprietary drivers, the open source ones barely work as is.

[–] uis@lemmy.world 3 points 1 year ago

The Linux market is too small for nVidia to care

I'll fix it for you: "The Linux gaming market"

Linux AI market is their bread, butter and red caviar. Shim itself is enough proof they care.

[–] priapus@sh.itjust.works 2 points 1 year ago (1 children)

The Linux market is massive for Nvidia. Nobody is using Windows for ML and everybody is using Nvidia for ML.

[–] lemmyvore@feddit.nl -1 points 1 year ago (1 children)

And the relation between graphical drivers and ML is?...

[–] priapus@sh.itjust.works 1 points 1 year ago (1 children)

GPUs are the primary hardware used for ML workloads...

[–] lemmyvore@feddit.nl -1 points 1 year ago (1 children)

Yes, but you don't need graphical drivers to do ML on a GPU, you just need the part of the drivers that lets you do ML. Accelerated graphics are almost completely unrelated. Nvidia can stop offering graphics drivers while still ofering ML drivers and still make a very good living.

Even if they continue offering graphics drivers they don't have to offer them for free. Their main clients are people who do professional graphical and video editing, who can drop hefty sums on driver licensing because they already pay a lot for the hardware and support. Gamers are a tiny amount of their revenue, and over 90% of that tiny revenue is Windows anyway.

At this point Nvidia can snap their fingers and discontinue all their support for the consumer market just like that and won't even feel it. The only reason they bother with free Windows graphics is that Windows gamers still generate a non-negligible amount of revenue by buying the overpriced desktop cards, and the only reason they bother with Linux graphics drivers is because it's free beta testing. The Linux desktop market is a ridiculously tiny population in terms of gamers, but it's a sizable population in terms of QA.

[–] priapus@sh.itjust.works 1 points 1 year ago (1 children)

Yes but this article is talking about the entire nvidia kernel driver... Why are you assuming this doesn't apply to the parts necessary for ML?

[–] lemmyvore@feddit.nl -1 points 1 year ago* (last edited 1 year ago) (1 children)

The top level comment in this thread is talking about "consumer facing products". ML is not a mainstream consumer use of Nvidia drivers. Most of the people who got a bee in their bonnet about Nvidia drivers not being open source are desktop users interested in the graphics drivers.

Either way, I don't understand the issue. If people don't like the fact Nvidia has proprietary drivers they can choose not to buy their hardware. To buy their hardware and then be upset about it makes no sense.

Same for the kernel developers, they either want proprietary drivers to work with Linux or not. If they don't they can give Nvidia the finger outright instead of pussyfooting around – but Nvidia is not the only one with proprietary drivers and I think we all know how quickly Linux would go the way of the dodo if it didn't support proprietary stuff.

This whole topic has always been rife with posturing, entitlement and hypocrisy. People love to enjoy all the benefits from Nvidia hardware while bitching about the drivers. You can't force a company to use open source. Take it or leave it.

It also a red herring. People love to point to AMD as a counter-example, but are AMD drivers so much better? They're open source but you can't write AMD's drivers for them, and AMD's people are slow to release them and to fix bugs so at the end of the day it's the exact same thing as far as I am concerned as a user.

[–] Sentau@lemmy.one 1 points 1 year ago

They're open source but you can't write AMD's drivers for them

There are a lot of people who are not amd employees who contribute to the Radeon drivers in mesa