cross-posted from: https://lemmy.world/post/25857381
Hellwig is the maintainer of the DMA subsystem. Hellwig previously blocked rust bindings for DMA code, which in part resulted in Hector Martin from stepping down as a kernel maintainer and eventually Asahi Linux as a whole.
It literally wasn’t about Rust specifically though. Christoph literally said it was about anything that was not C, including assembly, C++, brainfuck, or whatever, entering the kernel. Christoph likes Rust. Christoph (rightfully) does not like mixed language codebases for projects as large and important as Linux
You make it sound like it’s a matter of taste rather than a technical one (and I suspect it actually might be just about taste in the end)
Not his call, as we can see now
But isn’t this in specific just about bindings?
Yea but if someone uses those bindings then you can’t just not support it.
By the time this code gets into a large scale production system it will be 2029. That is when the bugs will come in if someone leveraged the Rust bindings.
You can ask the big company users at that time to contribute their fixes upstream, but if they get resistance because they have relatively junior Rust devs trying to push up changes that only a handful of maintainers understand, the company will just stop upstreaming their changes.
The primary concern that a major open source project like this will have is that the major contributors will decide that interacting with it is more trouble than it is worth. That is how open source projects move to being passion projects and then die when the passion dies.
Rust is straight up better than C. It’s safer and less prone to errors.
It’s not feasible to convert the entire Linux codebase at once. So your options are to either have a mixed codebase, or stick with effectively Cobol into 2020.
Rust is great, but you are not thinking from a long-term project perspective. Rust is safer, but Linux needs to be maintainable or it dies.
Based on what you’re saying, the only way its going to reasonably be converted to Rust is if someone forks Linux and matches all the changes they’re making in C as they happen but converts it all to Rust. Once its all converted and maintainability has been proven, a merge request would need to be made.
I can’t fathom how do you mean Rust is not maintainable. If anything for a new programmer C code is much more mind boggling than Rust.
Writing in Rust might make it much more maintainable.
See this is the problem with Rust people, they always misconstrue you saying “mixing two languages together makes a project less maintainable” to mean “Rust is unmaintainable” if Rust is the second language.
This is why the disagreement between Hector and Christoph happened in the first place.
Do better, reddit_sux