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.
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.
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.
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.
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.
That’s a shame irrespective of the drama. Asahi is surprisingly good. Installation is (relatively) straightforward.
I’ve got it on my primary laptop. I don’t use it frequently because battery life is poor compared to MacOS and I can’t use an external display but it’s an impressive achievement and I’m sure it will only get better. I haven’t used fedora in 20 years but it’s slick and easy and most of it just works. It looks just like my Linux workstation desktop.
It’s really a bummer seeing how much childish drama is in the Linux dev community.
I am not nearly a good enough dev to contribute to the Linux kernel, but I am working my way towards that point currently at night after my kids are in bed. Be the change and what not.
There is a reason the type of devs who have the talent, passion and time for projects like this are not spending 60hrs/wk at Google.
That’s a good way to take a bad situation and make it better. Good luck! Maybe I’ll join you one day.
The anti Rust bullshit is gonna kill Linux’s growth.
Meh, it’s just internal politics. Whether or not it’s rust makes no difference to the layperson whatsoever. I’m in favour of rust but don’t blow it out of proportion.
it seemed like the innocent(ish) holy wars of the past like emacs vs vi; but it’s taken on a whole new destructive trajectory of its own and the old guard would rather see Linux ossify into irrelevancy rather than letting the next generation take over.
it reminds me of an old quote from a general to the effect of: if 5 americans survive a nuclear war and 4 russian survive; then we’ve won and it was worth it.
either that or it’s like the technological equivalent of the the democratic leadership w disaffected democratic voters leading to defeat in this last election or an elderly driver whose grown children are trying to take away their keys before things get worse; all are refusing to acknowledge the writing on the wall because they think they still got it, but they don’t.
Ossify is up there with moist in my list of favourite words.
Unless those old farts die first
What is it that rust is less preferable to?
The kernel developers should Come up with a memory safe version of C for developing on the kernel. Kind of like how Git was created.
They kind of already do. The C used by the kernel team isn’t the exact same as what everyone else uses. Mainly because of the tooling they’ve built around it. I can’t remember specifics, but the tooling in place really helps out in that department.
Also, “memory safe C” is already a proposal for the C lang project.
So… Rust?
Rust is already as fast as C and memory safe. The reasons people don’t want it in the kernel basically amount to being a boomer that doesn’t like new things for immaterial reasons.
This news along with the news of WiFi driver maintainer stepping down, feels like there won’t be any new blood in Linux kernel development except for corporate funded developers.
It seems a lot of new developers want to do some things differently; old guard devs can either make some compromises, or accept that fewer new devs will want to be part of upstream.
Unsurprising. You don’t have to follow Hector Martin on social media for very long to learn that he’s a petulant, indignant, self-righteous drama queen.
I’m not going to deny that he can act aggressively, but his point is still valid. The anti-Rust sentiments of some maintainers has slowed down the upstreaming of Rust into the kernel. It doesn’t make sense to waste people’s time by letting R4L limp along in its current state.
R4L either needs to be given the go-ahead to get things upstreamed, to the dismay of some Linux maintainers who don’t like Rust, or R4L should be killed and removed from the kernel so we can stop wasting people’s time.
Personally, I think killing R4L would be a major mistake. Android’s Linux fork with Rust support has been a major success for Google and significantly cut down on vulnerabilities. And the drivers for Apple’s M chips has been surprisingly robust given how new they are and for being reverse engineered.
I’m not too new to linux, but also not too veteran, has it always has this shit drama? There is always some sort of fucking child throwing a tantrum about some shit. Has it always been the case? It’s really getting annoying.
FOSS land is always going to be populated by freaks and geeks. The well socialized devs get jobs at Google. It’s impressive the “system” works as well as it does, IMO. Passion is a big motivator.
It has always been like this.
Man, this is so unfortunate :/
There is always some sort of fucking child throwing a tantrum about some shit. Has it always been the case?
Petty much. The big difference this time is that there’s a common enemy (Rust) instead of relatively isolated petty crap.
I wish rust ppl would listen to the maintainers of the 30+ year old c project.
They have decades of experience maintaining and patching contributions made by people who are no longer active and the small request that those contributions be in the language of the project isn’t something to fight against.
It’s really a bummer when skilled developers fall back on stuff like “if shaming on social media doesn’t work, what am I supposed to do?”
the small request that those contributions be in the language of the project isn’t something to fight against.
When the contributions not in C are explicitly approved by the project owner, it seems that the 30+ year maintainers shouldn’t try to blockade any progress from actually happening. Working multi-language projects isn’t that much of a nightmare, if code governance and boundaries are well-defined and enforced.
Definitely a case of “everyone sucks here”. The maintainer being a dick and sabotaging R4L without technical justification and Hector putting it on blast.
Dunno man, when what the dev of 30+ years said was more or less “fuck off”, it seems that advice was in fact heeded
The system works
What sort of advise are they giving? I’m out of the loop
https://lore.kernel.org/lkml/[email protected]/
Here’s the whole thread if you wanna read for yourself.
My take away is that rust people are generally fine and try to abide by the norms of the kernel development process but Martin acts like a jerk and it would be okay if he didn’t come back.
See the comment far, far down in the thread implying that he’s somehow a more serious commenter or developer because he’s funded by donations as opposed to a company.