Rust in Linux Revisited

Feasibility of a Rust Linux-Compatible Kernel Clone

  • Many like the idea of a Rust-based, Linux-ABI-compatible kernel to avoid Linux kernel politics and prove Rust’s value.
  • Others argue it’s wildly underestimating effort: even with better tools and hindsight, you still need a large fraction of Linux’s total person-hours.
  • Prior attempts at Linux-ABI compatibility on other OSes (BSDs, Solaris/Illumos, Windows, Fuchsia’s starnix) are cited as cautionary; all are incomplete or stalled.

Drivers, ABI Complexity, and Hardware Vendors

  • Several comments stress that drivers, not the core kernel, are the dominant cost.
  • Linux has no stable in-kernel driver ABI; drivers are GPLv2 and tied to fast-changing internals, limiting reuse.
  • The Linux userspace ABI is huge, underspecified, and a moving target (syscalls, ioctls, /proc, netlink, driver-specific ABIs), making bug-for-bug compatibility extremely hard.
  • Hardware vendors often withhold documentation or require NDAs, effectively “locking in” Linux; this affects any alternative OS.
  • Some propose designing a new, stable driver API (with Android’s GKI cited as a partial step), but feasibility is debated.

Rust vs C in the Linux Kernel

  • Rust is praised for strong memory safety guarantees that static analysis in C cannot match.
  • Demonstrated Rust-in-kernel work includes: Apple M1 GPU driver, Android binder driver, a Rust network PHY driver, QR-code-on-panic work; these are seen as proof-of-concept successes.
  • Critics argue maintainers don’t want to learn Rust or maintain Rust breakage; proponents counter that refusing to consider safer tools is poor technical leadership.

Community Politics, Burnout, and Governance

  • Some see the Linux kernel process as hostile and “burnout-inducing,” especially for Rust contributors.
  • Others insist maintainers are entitled to reject Rust code and owe nothing beyond the right to fork.
  • There is disagreement whether forking/clone-building is constructive pragmatism or a grudgebased fragmentation that rewards abusive behavior.
  • Burnout of at least one Rust-for-Linux maintainer prompts discussion on whether the project itself is “burned out” or simply under political strain.

Alternatives and Architectural Debates

  • Some argue language changes miss the real issue: Linux’s monolithic architecture and lack of isolation for drivers.
  • Microkernels and systems like seL4 or other Rust OS projects are proposed as better long-term bets; others dismiss microkernels as historically unworkable at scale.
  • Clones and forks are framed by some as healthy (Xorg, GCC, Wine, Ladybird example), by others as condemning Rust devs to forever chase Linux’s decisions without influence.

Rust Ecosystem and Community Perception

  • Rust’s community is described both as enthusiastic/productive and as sometimes toxic or evangelistic (“rewrite it in Rust” culture).
  • Some question the lack of “killer apps,” while others list multiple widely used Rust tools and note extensive Rust adoption in large companies.