文章摘要
Bcachefs文件系统可能被移出Linux内核,原因是其开发历史充满波折,最近Linus Torvalds拒绝了其拉取请求,导致其未来在核心中的位置不确定。
文章总结
文章主要讨论了Bcachefs文件系统可能被移出Linux内核的问题。Bcachefs的开发者Kent Overstreet与Linux内核的维护者Linus Torvalds在开发流程和代码合并上存在分歧,导致Linus Torvalds考虑在6.17合并窗口中将Bcachefs移出内核。
主要内容总结:
背景与冲突:
- Bcachefs文件系统在内核中的历史一直不太顺利,最近Linus Torvalds拒绝了6.16-rc3版本的拉取请求,并表示可能在6.17合并窗口中与Bcachefs分道扬镳。
- Linus Torvalds认为Kent Overstreet在代码合并上过于强势,甚至不允许他对修复进行质疑,这让他感到不适。
Kent Overstreet的观点:
- Kent Overstreet认为自己在文件系统领域是专家,且对用户数据的安全性负有责任。他强调了在文件系统开发过程中,修复用户报告的bug是至关重要的,尤其是在文件系统尚未稳定时。
- 他担心如果bug修复不能及时合并,文件系统的稳定化进程将会大大延迟。
社区讨论:
- 社区成员对Bcachefs的未来表示担忧,认为Kent Overstreet与Linus Torvalds的合作方式存在问题,可能导致Bcachefs被移出内核。
- 一些开发者建议Kent Overstreet通过DKMS(动态内核模块支持)或其他方式继续开发Bcachefs,而不是依赖内核的合并流程。
技术细节:
- 文章还讨论了Bcachefs的修复功能是否应该放在用户空间,而不是内核中。Kent Overstreet认为在内核中实现修复功能可以更好地测试和验证文件系统的状态。
- 有人建议使用FUSE(用户空间文件系统)来实现修复功能,但Kent Overstreet认为FUSE的性能不足以替代内核实现。
未来展望:
- 如果Bcachefs被移出内核,Kent Overstreet可能会通过DKMS或其他方式继续开发,但这将对用户和发行版的支持带来挑战。
- 社区普遍认为,Kent Overstreet需要更好地遵守内核开发的流程和规则,以避免与Linus Torvalds的进一步冲突。
图片:
- Image 1: LWN.net Logo
- Image 2: LWN
结论:
Bcachefs的未来取决于Kent Overstreet与Linus Torvalds之间的合作方式。如果Kent Overstreet不能更好地适应内核开发的流程,Bcachefs可能会被移出内核,转而通过其他方式继续开发。
评论总结
主要观点总结:
对Linux文件系统开发的批评
- 评论1指出Linux文件系统的开发问题不断,似乎没有尽头。
引用: "The drama with Linux filesystems is just nuts... It never ends." - 评论16认为Linux需要一个可靠的ZFS替代品,但btrfs和bcachefs都未能胜任。
引用: "Linux needs a true answer to ZFS that's not btrfs... Apparently bcachefs won't be the successor."
- 评论1指出Linux文件系统的开发问题不断,似乎没有尽头。
对bcachefs开发者的批评
- 评论5和评论9批评开发者Kent Overstreet的行为,认为他频繁违反规则,导致项目不稳定。
引用: "Quit deliberately antagonizing Linus... Stop making your self-imposed problems everyone else's problems."
引用: "Kent is in the wrong... Linus is absolutely in the right to kick this out."
- 评论5和评论9批评开发者Kent Overstreet的行为,认为他频繁违反规则,导致项目不稳定。
对bcachefs管理模式的质疑
- 评论3建议bcachefs应由团队而非个人管理,以避免“巴士因子”问题。
引用: "May be bcachefs should have been governed by a group of people, not a single person." - 评论6指出Kent的行为和项目的单一依赖让人对技术产生疑虑。
引用: "Overstreet's behavior and the apparent bus factor of 1 leave me reluctant to investigate this technology."
- 评论3建议bcachefs应由团队而非个人管理,以避免“巴士因子”问题。
对Linux内核开发流程的建议
- 评论4和评论18建议Linux应提供稳定的内核模块API,以便文件系统可以独立发布。
引用: "If Linux would add a stable kernel module API this wouldn't be a huge a problem."
引用: "Imagine how much easier this all would be if linux maintained a slowly evolving filesystem API."
- 评论4和评论18建议Linux应提供稳定的内核模块API,以便文件系统可以独立发布。
对文件系统功能的讨论
- 评论8认为文件系统应专注于基本功能,复杂功能应在用户空间实现。
引用: "The filesystem should do files, if you want something more complex do it in userspace." - 评论17质疑文件系统是否必须集成在内核中,建议通过迁移分区实现更换文件系统。
引用: "Does the filesystem actually need to be part of the kernel project to work?"
- 评论8认为文件系统应专注于基本功能,复杂功能应在用户空间实现。
其他观点:
- 评论10和评论15对bcachefs的名称进行了幽默解读。
引用: "For some reason I always read this as 'BCA chefs'."
引用: "bCacheFS, not BCA Chefs." - 评论19推荐了一个YouTube频道,认为其内容客观且接近LKML的新闻报道。
引用: "He gets a few words wrong... but most of his coverage seems objective and factual."
总结:
评论主要围绕Linux文件系统开发的复杂性、bcachefs开发者Kent Overstreet的行为及其对项目的影响展开。批评者认为Kent频繁违反规则,导致项目不稳定,并建议bcachefs应由团队管理。同时,评论者呼吁Linux提供更稳定的内核模块API,以便文件系统可以独立发布。此外,部分评论者认为文件系统应专注于基本功能,复杂功能应在用户空间实现。