https://www.theregister.com/2025/02/05/mixing_rust_and_c_linux/
Mixing Rust and C in Linux likened to cancer by kernel maintainer
The problem, they can't, as Rust is currently too immature a language, with limited availability on platforms as compared to C. C is the only HLL on a huge number of platforms running and maintaining version of Linux.
Does Rust have an internationally recognised Standard definition?
I don't see that changing in the nearterm because at its root, the Linux kernel is about making hardware useful for applications by exposing userland API's, not software applications for users. The internal kernel APIs are always in flux because they need to adapt to new hardware systems that can completely fracture older ways of doing things. What made and still makes Linux a success today is the ability to quickly turn new hardware into useful systems while still being able to support old hardware. The Rust theory of software memory safety for hardware is IMO far too idealistic as a solution for the problems of systems programming on hardware.
The true hacks are at the binaries and guess what? Rust uses the same ASM chain as all the other languages.
Mixing Rust and C in Linux likened to cancer by kernel maintainer
If you want a Rust Linux kernel, then fork the source and rewrite it in Rust.If you want to make Linux impossible to maintain due to a cross-language codebase, do that in your driver so that you have to do it instead of spreading this cancer to core subsystems. (where this cancer explicitly is a cross-language codebase and not Rust itself, just to escape the flameware brigade).
...
Every additional bit that another language creeps in drastically reduces the maintainability of the kernel as an integrated project. The only reason Linux managed to survive so long is by not having internal boundaries, and adding another language completely breaks this. You might not like my answer, but I will do everything I can do to stop this. This is NOT because I hate Rust. While not my favorite language it's definitely one of the best new ones and I encourage people to use it for new projects where it fits. I do not want it anywhere near a huge C code base that I need to maintain.
The problem, they can't, as Rust is currently too immature a language, with limited availability on platforms as compared to C. C is the only HLL on a huge number of platforms running and maintaining version of Linux.
Does Rust have an internationally recognised Standard definition?
I don't see that changing in the nearterm because at its root, the Linux kernel is about making hardware useful for applications by exposing userland API's, not software applications for users. The internal kernel APIs are always in flux because they need to adapt to new hardware systems that can completely fracture older ways of doing things. What made and still makes Linux a success today is the ability to quickly turn new hardware into useful systems while still being able to support old hardware. The Rust theory of software memory safety for hardware is IMO far too idealistic as a solution for the problems of systems programming on hardware.
The true hacks are at the binaries and guess what? Rust uses the same ASM chain as all the other languages.
Last edited by a moderator:




