this post was submitted on 07 Feb 2025
179 points (98.9% liked)

Linux

49738 readers
679 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
 

Following arguments on the Linux kernel mailing list the past few days over some Linux kernel maintainers being against the notion of Rust code in the mainline Linux kernel and trying to avoid it and very passionate views over the Linux kernel development process, Asahi Linux lead developer Hector Martin has removed himself from being an upstream maintainer of the ARM Apple code.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 15 points 22 hours ago* (last edited 21 hours ago) (4 children)

Rust seems to be imperative for security. I hope people in the Linux kernel community put aside their differences and find common ground for the benefit of everyone.

From my perspective as an outsider, there is a lot of apparent hostility and seemingly bad faith engagements going on in this space. Hopefully the reasons are innocuous like them just not wanting to learn a new language, to avoid increasing their workload, or to simply avoid working with the Rust team for whatever reasons they might have.

I would argue that anybody standing in the way of progress and increased security should be moved out of the way. No need for shaming or deep dives, just move the ship forward.

[–] [email protected] 9 points 10 hours ago* (last edited 10 hours ago)

Hector posting it to social media, and by his own admission, to shame the C devs, is pretty hostile and bad faith too. Imo it's the most overt occurrence of hostility here, but no one seems to mind? Are people just completely numb to social media hostilities or smth?

[–] [email protected] 2 points 10 hours ago

Does the kernel not need a lot of memory unsafe Rust code? There is a way to bypass the safety nets and I heard that for stuff like kernel development that is necessity.

[–] [email protected] 15 points 18 hours ago (2 children)

The crucial point is that the people who can work on the kernel now itself are

  • c people who don't know rust yet
  • c people who know rust well

The moment we get rust in there, the people who can work on the kernel reliably as a whole are

  • c people who know rust well

That's a much smaller group than the one above.

Here's the point: THE SAME ISSUE would arise if it were D, or some kind of compiled python, object-oriented bash static objects, if that existed; or anything. Whatever the other language was, it'd present the same risk.

Rust people: it's not about you. It's about splitting the codebase.

[–] [email protected] 3 points 16 hours ago (1 children)

I always thought kernel devs were smart people. I'm kind of shocked learning a new language is this big of a barrier to them.

[–] [email protected] 4 points 11 hours ago

Even “smart people” have resource/time limitations. Learning rust to an extent that will work on that level is not the same as learning C.

[–] [email protected] 0 points 10 hours ago* (last edited 10 hours ago)

The rust people said they'd take ownership of the work for the bindings so C maintainers don't have to. What's the issue?

[–] [email protected] 6 points 20 hours ago

Agreed, especially as the proprietary alternatives are starting to incorporate more and more Rust, even Windows is starting to rewrite their core libraries in Rust.

On top of security though, its going to be important for continuing to bring new maintainers onboard. Less and less people are learning C, especially to a level proficient enough to be a kernel maintainer. As Rust matures even more, C is effectively a legacy language at this point, a C++ won't be too far behind either, and Linux is going to be hard pressed to find maintainers as the graybeards retire.