Linus Torvalds intends to exclude Bcachefs from the Linux 6.17 kernel

Another discussion between Linus Torvalds and Kent Overstreet, the author of Bcachefs, concluded with Linus expressing his willingness to exclude Bcachefs code from the Linux 6.17 kernel. At the same time, Linus accepted changes to Bcachefs in kernel 6.16, which had become a source of Kent's ongoing dissatisfaction. Linus wrote:

I believe our paths will diverge in the 6.17 merge window.

You made it very clear that I cannot question any bug fixes and must just accept everything.

Honestly, I don't feel particularly comfortable being involved in all of this, and the only thing we both seem to really agree on in the discussion is that 'we are done'.

The correspondence leading up to this statement with Kent was conducted privately, and the details are still unclear. However, in discussing this topic, Kent wrote that it is possible his words in the private correspondence were misinterpreted, and he does not believe that BcacheFS should be excluded from the kernel. At the same time, he is open to stopping the inclusion of Bcachefs in the main Linux kernel, which would not kill the project, although it would be a huge problem. If Bcachefs is removed, development will continue, and this filesystem will be distributed as a DKMS module. Kent also noted that excluding BcacheFS from the kernel would be the best option for his peace with Linus, but it clearly would not be the best solution for users and the developer community.

The disputes between Kent and Linus are caused by constant violations of the rules for submitting changes and fixes to the kernel. Kent believes that fixes for issues in the filesystem should be pushed forward promptly and by any means necessary. Linus insists that functional changes and significant fixes are permissible only in the early stages of developing a new kernel branch, while late-stage release candidates focus solely on bug fixes. Kent regularly violates this rule, sending large changes at inappropriate times, leading to Linus's dissatisfaction and a new wave of disputes. Linus had previously warned Kent about the desire to remove Bcachefs from the main kernel, as Kent continues to play alone in his sandbox, not engaging in collaborative work and refusing to adhere to the community of kernel developers' rules.

In the case of kernel 6.16, Kent submitted a set of patches for inclusion in the RC3 update, among which was a patch implementing a new option called "journal_rewind." Linus wrote that Kent had forgotten that after the closing of the window for functional changes, adding new functionality to the kernel is not permitted, even if it is related to fixing other bugs, as introducing new capabilities at late stages of release formation can lead to regressions. Additionally, Bcachefs continues to be positioned as an experimental filesystem, and the urgency of fixing errors in it is not as critical.

Kent responded that the main goal of development is to provide users with functioning code, so he is not willing to concede on issues related to fixing bugs that affect data integrity. Unlike other subsystems, bugs in the filesystem cannot be resolved by rebooting and can lead to data corruption. Therefore, in Kent's view, postponing their fixes until the next window for accepting changes is unacceptable, even if such fixes require significant changes.

The added option 'journal_rewind' rolled back changes in the journal to reset the file system to an earlier state. Kent believes that this new option should be enabled without delay, as it resolves the issue of file system recovery for users who encountered errors when deleting subdirectories and do not have a backup. Initially, Linus refused to accept the set of patches with this change in kernel 6.16-RC3, but after personal correspondence with Kent, he changed his position and accepted the changes into the codebase on which update 6.16-RC4 is based.

Source: opennet.ru

Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster