Rust kernel policy

Governance and Policy Clarity

  • Several commenters feel the Rust-for-Linux effort lacks a clear, enforced policy: who decides what, what maintainers must accept, and how cross-language interfaces should work.
  • Some argue Linux’s distributed governance (subsystem maintainers with a lot of autonomy) makes it hard to impose a coherent Rust strategy without stronger direction from the top.
  • Others counter that Linus’s approach—allow Rust, but let subsystem maintainers decide—is appropriate given project size and complexity.

Linus’s Role and Maintainer Conflicts

  • Strong criticism that the current “political mess” is largely due to Linus approving Rust without clearly defining what that means in practice.
  • One side wants him to either explicitly back Rust (and overrule blocking maintainers) or clearly say “no Rust” to avoid wasting effort.
  • Others reply that he must trust maintainers, can’t centrally micromanage every subsystem, and that some behind-the-scenes coordination is already happening.

Technical and Toolchain Issues

  • Concerns about mixing GCC (for C) and LLVM/Clang (for Rust and bindgen) in kernel builds; some kernel developers historically oppose mixed toolchains.
  • Rust’s use of unstable language features is seen as a risk; defenders note that:
    • Kernel has long depended on non-standard GCC extensions.
    • Rust and kernel teams coordinate to stabilize what the kernel needs.
  • Questions around static linking of libgcc and long-term compatibility of Rust-generated code.

Rust vs. C: Safety, Complexity, and Culture

  • Pro-Rust arguments:
    • Memory safety is increasingly mandated (governments, industry); Linux must compete.
    • Rust is easier to write correctly than C; C is “simple to learn, hard to use safely.”
    • Rust is particularly valuable for drivers and DMA-safe abstractions.
  • Skeptical views:
    • Rust feels complex/“PhD-level” to some; fear existing C maintainers won’t adopt it.
    • Cross-language codebases and bindings are called “cancerous” or maintenance nightmares.
    • One commenter argues Linux’s unstable APIs, monolithic design, and GCC focus make deep Rust integration fundamentally mismatched; a full Rust OS (e.g., Redox) is seen as cleaner.

Project Identity and Support

  • Confusion over who “we” is in the Rust-kernel policy; some want clearer attribution and authority.
  • Clarified in-thread: Rust-for-Linux is led by kernel folks, not the Rust Foundation, but the Rust project treats “R4L on stable Rust” as a flagship goal and actively supports needed language work.
  • There is debate over naming individuals publicly due to concerns about harassment and misplaced responsibility.

Long-Term Outlook

  • Some predict old-guard C maintainers may eventually leave as Rust use grows and new generations of developers arrive.
  • Others think Rust will remain limited to drivers and select subsystems, never supplanting C wholesale.
  • Overall, commenters see high technical promise but unresolved governance, social, and tooling tensions.