- cross-posted to:
- linux@lemmy.world
- linux@sh.itjust.works
- linux@lemmy.ml
- cross-posted to:
- linux@lemmy.world
- linux@sh.itjust.works
- linux@lemmy.ml
Behold, a Linux maintainer openly admitting to attempting to sabotage the entire Rust for Linux project:
https://lwn.net/ml/all/20250131075751.GA16720@lst.de/
The good news is this doesn’t affect drm/asahi, our GPU driver. The bad news is it does affect all the other drivers we’re (re)writing in Rust, two so far with a third one coming.
Another choice quote, calling R4L “cancer”: https://lore.kernel.org/lkml/20250128092334.GA28548@lst.de/
Personally, I would consider this grounds for removal of Christoph from the Linux project on Code of Conduct violation grounds, but sadly I doubt much will happen other than draining a lot of people’s energy and will to continue the project until Linus says “fuck you” or something.
As for how to move forward, if I were one of the Rust maintainers, I would just merge the patch (which does not touch code formally maintained by the dissenter). Either Linus takes the pull, and whatever Christoph says is irrelevant, or he doesn’t, and R4L dies. Everything else is a waste of everyone’s time and energy.
Edit: Sent in my 2 cents: https://lore.kernel.org/rust-for-linux/2b9b75d1-eb8e-494a-b05f-59f75c92e6ae@marcan.st/T/#m1944b6d485070970e359bbc7baa71b04c86a30af
I am not a programmer. If you showed me C code and called it Rust, or vice versa, I would probably not be able to tell the difference. As such I’m not going to focus on technical merits or demerits, I’ll focus on what people say.
This is relevant:
What I take from this interaction is that Hellwig is not really picking a bone against Rust; his main concern is introducing new languages into the kernel and reducing its maintainability. And IMO Krummrich’s answer up to the second-to-last reply was really great - addressing the complain by highlighting that C developers won’t need to bother with that chunk of Rust code. (That last reply was awful, though.)
Based on this interaction I think that I agree with 5714 in this thread, that Hellwig might be overreaching.
So far, so good. What Hector Martin is doing there is something else. He is not selling the merits of the project Rust4Linux, he’s simply creating drama, by distorting Hellwig’s position from “don’t bring new languages into the kernel” into some sort of personal crusade against Rust.
And it’s rather “curious” how he brings up the CoC as some sort of rubber stick to bash people with, but omits which part of the CoC Hellwig would allegedly have violated.
Relevant tidbit: “the another language” sounds like a word-by-word translation from German “die andere Sprache”. It doesn’t really sound dismissive in German (Hellwig is clearly a German speaker.)
“As if trying not to even acknowledge its proper name and existence.” - okay… now the user is assuming = making shit up. It’s perfectly possible that Hellwig simply didn’t call it “Rust” to focus on the fact that his problem is not against Rust, but against a mixed language codebase - the complete opposite of what raulinbonn is assuming.
Hector Martin isn’t claiming that Hellwig’s crusade is against Rust, but against R4L. The problem is that the R4L project has always been about Rust in the kernel. “Don’t bring new languages into the kernel” is a crusade against R4L.
Fair point.
Still neither a crusade nor a personal one, unless proved contrariwise. It’s just that he’s prioritising some things and the R4L project is prioritising other things.
I didn’t use the word “personal”, but it’s inherently somewhat personal in that it’s one person trying to fight back against a decision that Linus and GKH have both endorsed (to put Rust in the kernel). “Crusade” is strong wording, but so is “I will do anything I can to stop this.” That’s far beyond simply “prioritizing [other] things.”
I’m aware that you didn’t use the word “personal”; I did. (Sorry if what I said implied otherwise, it was my bad.) My point is that Martin is making a big deal like Hellwig had some bone to pick specifically against the R4L project and Rust, you know?
Based on the info that I currently have at hand I do think that the project will progress further, against Hellwig’s wish, and this will be a net benefit for the kernel. I just don’t see the big deal that people make of his opposition, he’s just being the old man screaming at cloud.
But…that’s exactly what’s happening. Rust is already in the kernel, with both Linus’s and GKH’s approval. CH is trying to singlehandedly reject any use of Rust in any part of the kernel where he has maintainer status. That’s pretty specific to R4L.
“How dare anyone criticize rust” is what this boils down to
Christoph Hellwig isn’t criticizing Rust the language, and Hector Martin isn’t claiming that he is. This is about a project, Rust for Linux, that has been endorsed by both Linus and GKH, and one maintainer personally attempting to stop it from moving forward.
He did call it a “shiny language of the day”. That’s criticism. He’s saying the popularity of Rust is due to temporary hype rather than because it is intrinsically good.
Your position is entirely reasonable and an excellent example of how ignoring technical details leads to failures of technical leadership. C is one of several languages notable for extreme lack of memory safety. Its lack of safety has been repeatedly quantified; I like to recommend Gaynor 2021 for a high-level introduction. Rust was introduced primarily to replace C (and a relative, C++) and improve the overall security of computing systems.
The “merits of the project Rust4Linux” are simple and obvious: as code is translated from C to Rust, its overall characteristics (readability, performance, low-level modeling of machine behavior) will remain, but overall memory safety will increase. Opposition to it is reactionary, not well-grounded in technical merits; most of Linux is not well-proven to be correct, only believed to be correct under typical operating conditions as estimated by several dozen experienced programmers, and any technical options for improving our confidence in its correctness should be considered.
Also, finally, I have to dock you for reading comprehension. Martin was quite clear: calling Rust a “cancer” – a cute pun given Rust’s crab mascot, or a dehumanizing slur, who knows – was, to them, a violation of the Code. It is not difficult to read the Code and notice that, were it a slur, it would violate the prohibition on “insulting/derogatory comments, and personal or political attacks.”
That’s why I didn’t address the technical merits, like a leader should. (Nor I am a leader; I’m a random with a chimp avatar.) I focused on the “popcorn” / drama.
Cool beans.
What I’m saying is that Martin should be sharing this info, instead of creating drama.
Because ultimately the goal of both sides is the same, a better kernel. It’s just that one prioritises consistency (for the sake of maintainability) and another the advantages of Rust over C, and those priorities are in conflict.
And if Hellwig cannot be convinced, the leadership can, and should.
I’m saying that Martin has the moral obligation to make his complain as precise as possible: “The CoC says [insert excerpt] and Hellwig is going against that”. Telling people to RTFCoC is the opposite of that. Is this clear now?
Also, this either is or isn’t a violation of the CoC. There’s no space for “to them”, rule violations should be handled as objectively as reasonably possible. (From a quick check, it doesn’t seem to be one. I might be wrong however.)
There’s no room for either reading, given that
The immediate reading is as an analogy; cancer is known for spreading itself through tendrils, taking huge amounts of resources. If that reading is correct, Hellwig is criticising the project for not being well contained, and invading spaces that Hellwig believes that it shouldn’t.
Another possible reading is “cancer” as “shit”, “crap”, or “rubbish”; a simple negative word.
And were my cat a chicken, she would lay eggs. However my cat is not a chicken and “cancer” is not a slur.