Lead Developer of Rust on Linux Resigns, Mentioning Dissatisfaction with Nontechnical Issues

Lead Developer of Rust on Linux Resigns, Mentioning Dissatisfaction with Nontechnical Issues

Lead Developer of Rust on Linux Resigns, Mentioning Dissatisfaction with Nontechnical Issues


### The Rust vs. C Discourse in the Linux Kernel: A Confrontation of Ideologies and Code

The Linux kernel, the core of the most prevalent open-source operating system globally, has traditionally been a stronghold of C programming. However, recent initiatives to incorporate Rust—a contemporary, memory-safe programming language—into the kernel have ignited fervent discussions among the developer community. This conflict transcends mere technical advantages, delving into culture, tradition, and the future trajectory of one of the world’s most vital software projects.

#### The Advocacy for Rust in the Linux Kernel

Rust is a relatively novel programming language that has gained attention for its emphasis on memory safety, concurrency, and performance. Unlike C, which has underpinned the Linux kernel since its beginning, Rust comes with inherent safeguards against typical programming mishaps like null pointer dereferencing and buffer overflows. These characteristics render Rust an appealing choice for developing secure and reliable code, especially in a project as intricate and essential as the Linux kernel.

The “Rust for Linux” initiative was launched to investigate the feasibility of integrating Rust into the kernel, commencing with device drivers and other isolated elements. The concept was to progressively introduce Rust, enabling developers to assess its advantages without interrupting the entire codebase. The initiative gained momentum, and some early adopters started contributing Rust code to the kernel.

#### The Opposition from C Experts

Nonetheless, not everyone in the Linux ecosystem has embraced Rust enthusiastically. The kernel’s longstanding maintainers, many of whom have dedicated decades to working with C, have conveyed skepticism and even outright resistance to Rust’s integration. This opposition is not solely technical; it is fundamentally entrenched in the culture and historical context of the Linux project.

One of the most outspoken critics is Ted Ts’o, a notable kernel maintainer. At a Linux conference, Ts’o conveyed that he and others were not inclined to be “compelled” to learn Rust. His remarks underscored a broader attitude among some C developers who regard Rust as an unwarranted complexity in an already intricate project.

Wedson Almeida Filho, a prominent figure in the Rust for Linux initiative, recently resigned as the project maintainer, citing frustration with the “nontechnical nonsense” that had become a significant barrier. Filho’s resignation highlights the difficulties Rust proponents encounter in attempting to engender change in a project as extensive and established as the Linux kernel.

#### The Cultural Schism

The resistance to Rust transcends the technical hurdles of amalgamating a new language into the kernel. It is also indicative of a cultural divide between the veteran C developers and a newer generation of programmers who view Rust as the future of systems programming.

Asahi Lina, a developer on the Asahi Linux project, shared her frustrations on social media, mentioning that some C developers appeared intent on complicating matters for Rust maintainers. Lina’s experience with the Direct Rendering Manager (DRM) scheduler, where she faced opposition to enhancing the robustness of C code, exemplifies the friction between maintaining the existing order and adopting novel coding methodologies.

Drew DeVault, founder of SourceHut, has similarly commented on the discourse, proposing that Rust developers might find it more advantageous to create a Linux-compatible kernel from the ground up instead of attempting to navigate the political and technical challenges of merging Rust into the current kernel. DeVault’s remarks reflect the discontent many Rust advocates experience as they endeavor to drive change in a project known for its resilience against influence.

#### Linus Torvalds’ Viewpoint

Linus Torvalds, the creator and chief maintainer of the Linux kernel, has adopted a more judicious perspective regarding the Rust discussion. In 2021, Torvalds articulated a “wait and see” stance, hoping that Rust would demonstrate its value in isolated components like device drivers prior to broader adoption.

Recently, Torvalds acknowledged that the uptake of Rust within the kernel has progressed more slowly than anticipated, partly due to reluctance from C developers who are hesitant to embrace a new language. He also noted that Rust’s infrastructure has not been entirely stable, contributing to the gradual advancement.

However, Torvalds did not outright reject Rust. He acknowledged that the language possesses potential, particularly in domains where memory safety is paramount. His comments imply that while Rust may encounter substantial challenges, it is not entirely ruled out.

#### The Prospects of Rust in the Linux Kernel

The discussion surrounding Rust’s role in the Linux kernel is far from resolved. While the language presents evident advantages concerning memory safety and code durability, its acceptance confronts considerable challenges—both technical and cultural. The Linux kernel is a high-stakes project with a lengthy history, and any alterations to its development methodologies are likely to meet resistance.

For the moment, C remains the prevailing language of the Linux kernel, yet the door to Rust isn’t firmly shut. As the project continues to progress, it will be intriguing to observe whether Rust can establish a more prominent presence in the kernel or whether it.