Linux kernel creator Linus Torvalds and Bcachefs lead developer Kent Overstreet clashed on October 5th, 2024, over Bcachefs development practices. Torvalds criticized Overstreet's lack of testing and pre-submission collaboration, while Overstreet defended his rapid iteration approach and direct user feedback loop. The disagreement escalated, culminating in Torvalds threatening to remove Bcachefs from the mainline kernel.
This blog post summarizes the ongoing conflict.
Table of Contents
Linus Torvalds expressed strong dissatisfaction with Kent Overstreet's Bcachefs development methods on the Linux kernel mailing list. He highlighted insufficient testing, citing a big-endian build failure caused by a patch lacking external review. His message emphasized the unacceptable risk of untested code entering the mainline kernel.
The dispute stemmed from Overstreet's submission of several Bcachefs fixes for Linux 6.12-rc2. These fixes, committed without prior public review, raised concerns about inadequate testing. Torvalds pointed to the big-endian issue as a prime example of the risks associated with this approach. He further criticized the lack of broader developer involvement, suggesting a solitary development style hampered progress and collaboration. Torvalds' response to Overstreet's initial reply underscored his concern about the lack of community contribution and the submission of untested patches close to release deadlines.
Overstreet countered that the fixes, though recently committed, were developed over two weeks. He emphasized his direct user feedback loop, arguing that this rapid iteration model fostered quick bug resolution. He also drew parallels to the Linux kernel's early development, suggesting a more flexible approach was justified in Bcachefs' early stages.
Torvalds dismissed these arguments, asserting that established processes exist for a reason and that deviating from them negatively impacts the entire project. He rejected the comparison to early Linux development, highlighting the project's evolution and improved development practices.
Frustration mounted on both sides. Overstreet, defending his commitment to Bcachefs, challenged Torvalds to create his own filesystem if he believed his methods superior.
In response, Torvalds threatened to remove Bcachefs from the mainline kernel entirely if Overstreet persisted in his current approach. He questioned the value of maintaining Bcachefs in the mainline if it remained a solo project with minimal integration and collaboration. The future of Bcachefs within the Linux kernel remains uncertain.
The core disagreement revolves around Bcachefs' development process: testing, community participation, and adherence to mainline kernel standards. Torvalds criticized insufficient testing and limited community involvement, while Overstreet defended his rapid iteration model and direct user feedback.
Community members, including Carl E. Thompson and Theodore Ts'o, weighed in. Thompson suggested an out-of-tree development model as a compromise, while Ts'o highlighted existing automated testing frameworks available to developers. Overstreet acknowledged the need for improved regression testing and a more accessible testing infrastructure.
The conflict highlights the challenges of managing large open-source projects and the balance between individual contributions and community collaboration. The resolution and impact on Bcachefs' future remain uncertain.
Further reading: https://www.php.cn/link/5b4634374f3d21e6903ba5ff2b771fa4
The above is the detailed content of Linus Torvalds Expresses Frustration With Bcachefs Development Process. For more information, please follow other related articles on the PHP Chinese website!