111
submitted 1 year ago by ono@lemmy.ca to c/linux@lemmy.world
you are viewing a single comment's thread
view the rest of the comments
[-] JATtho@sopuli.xyz 1 points 1 year ago* (last edited 1 year ago)

I almost posted comment about this but I had to keep it short. The Nvidia has an problem with their driver tainting the customers kernel/system which renders the customer in bad situation. (Of not being able to get support from kernel devs)

The proprietary taint is there for exactly for this reason:

  • You load an proprietary module and all bets are off.
  • For starters, you cannot tell there isn't a backdoor engineered into it.
  • Even if the module behaves well, you now cannot debug the rest of the system any more, because all trust is gone.
  • You cannot (at least easily) audit such system.

Nvidia solution to this is breaking the kernel license terms and acting like illegal smugglers in-order to access those sweet sweet GPL-only kernel APIs as lazily as possible. I would say that this is just arrogant and greedy way of doing software development. On top of this the kernel devs get all the blame for their vigilantly of trying to exercise their own license terms.

I think if nvidia would not be this arrogant and vile to the kernel devs, they would already have an proper kernel module that could co-exist between the GPL and proprietary code. If the proprietary code is implemented only in user-space/firmware they can keep their secrets: The user-space <-> kernel-space is an boundary where kernel GPL ends. Implementing such thing would not be easy, but I don't regard it being impossible: look at android.

In extreme: If the hostility continues, kernel devs just might be forced to go invent an corporate blacklist that goes against all principles of co-operation.

Others slightly more sane hw vendors, probably thought: fuck it. It is more profitable to push some FOSS code into the public than keeping the entire thing an trade secret. (I assume this results in the weirdly large firmware blobs that obfuscate and separate the actual hardware from the FOSS drivers)

EDIT: I read more about this issue. From proprietary code vendors viewpoint the current kernel is kind of "GPL or gtfo" situation. Linux kernel doesn't really have an internal stable ABI for modules/drivers. Implementing such thing would require (partly) dropping the monolithic design of the Linux kernel... Such interface would be then able to added to the GPL exemption of syscall users. This would open such big can of worms that it looks to be impossible.

this post was submitted on 30 Aug 2023
111 points (100.0% liked)

Linux

8166 readers
14 users here now

Welcome to c/linux!

Welcome to our thriving Linux community! Whether you're a seasoned Linux enthusiast or just starting your journey, we're excited to have you here. Explore, learn, and collaborate with like-minded individuals who share a passion for open-source software and the endless possibilities it offers. Together, let's dive into the world of Linux and embrace the power of freedom, customization, and innovation. Enjoy your stay and feel free to join the vibrant discussions that await you!

Rules:

  1. Stay on topic: Posts and discussions should be related to Linux, open source software, and related technologies.

  2. Be respectful: Treat fellow community members with respect and courtesy.

  3. Quality over quantity: Share informative and thought-provoking content.

  4. No spam or self-promotion: Avoid excessive self-promotion or spamming.

  5. No NSFW adult content

  6. Follow general lemmy guidelines.

founded 1 year ago
MODERATORS