Christoph Hellwig, a developer known for his work on the DMA, KVM, Slab Allocator subsystems, and PowerPC architecture in the Linux kernel, has expressed strong opposition to the integration of Rust as part of the kernel. This debate arose in response to the publication of rules by the Rust for Linux project advocating for the inclusion of Rust in the kernel. Hellwig argues that these rules lack community consensus and are not properly documented for integration into the kernel.
Hellwig further criticized the rules for suggesting that maintainers could unilaterally decide to adopt Rust code in their subsystems. Despite opposition from some maintainers, Hellwig alleges that Linus Torvalds, the creator of Linux, is adamant about incorporating Rust into the kernel. This decision may force developers and contributors to work with Rust code, potentially causing fragmentation and complications within the kernel.
In likening the spread of Rust code to a cancerous tumor, Hellwig warns about the difficulties of managing a codebase written in multiple languages within the kernel. He expresses concerns about the challenges of transitioning code between languages and calls for a clearer rationale for implementing Rust into the kernel. Hellwig questions the benefits of introducing a new language amidst existing safety concerns and the potential burden it may place on those responsible for maintaining the kernel.
Proponents of introducing Rust into the kernel argue that it will enhance memory safety, minimize errors, and simplify code review and refactoring processes. They believe that leveraging Rust’s advanced capabilities will facilitate driver development and attract new contributors to the kernel. Additionally, supporters highlight the use of Rust tools to meet documentation requirements for code, such as API documentation and safety measures.
For more information, please refer to the discussion and the Rust for Linux project’s policy.