根据科技媒体 Phoronix 的报道,开发已久的 bcachefs 文件系统驱动程序已提交到 Linux 6.5,但由于各种技术问题和开发者的“内斗”,此驱动程序并没有在该开发周期内合并。
bcachefs 是一个写时复制(CoW)的文件系统,其源自于 Linux 内核的块缓存 bcache。几个月前,bcachefs 的补丁集已正式递交审查,有望被纳入内核。
开发者希望能提供类似 XFS/EXT4 的性能,以及类似 Btrfs 和 ZFS 的特性。其主要开发者表示 bcachefs 的特性“多到无法列出”,而已知错误也是“多到无法列出”。
上个月,Linux 内核开发者就“bcachefs 文件系统驱动程序”在邮件列表展开了激励的讨论,气氛也逐渐变得剑拔弩张(出现了许多不友好的信息)。但这种变化并不是来源于文件系统本身,而是内核模块本身之外所需的代码更改。
现在,Linus Torvalds 本人已经开始亲自 review 所提交的代码,并就相关情况发表了自己的看法。
Linus 昨天完成了对 bcachefs 代码的 review。他表达了对部分锁定代码 (locking code) 的担忧,并认为 bcachefs 的部分先决代码应通过各自的子系统/维护者分支进入,而不是放到大的 PR 里面。
总的来说,Linus 对 bcachefs 合并状态的立场基本上可以归结为:
我只关心 bcachefs 内部的东西,因为我非常非常希望有人能够查看这六个锁,但同时,只要这些东西纯粹是 bcachefs 内部的,不会影响其他任何东西,我就不会太担心。
实际上,最让我困扰的是我所看到的个人论点。我不知道该怎么办。由于 Christian 的反对,我其实并不想合并这个,因为我们有一个负责任的 vfs 维护者。
因此,即使不考虑 "我认为先决条件应该单独加入,或者至少明确注明"的问题,这些争论也必须得到解决。
bcachefs 首席开发者 Kent Overstreet 表示将重新提交到 Linux 6.6,因此我们不妨拭目以待 bcachefs 问题和开发者的争论是否能在未来几周内降温。