
今年稍晚时候,Linux 6.18 的到来将为那些未获得许可/与 GPL 不兼容的树外文件系统驱动程序带来新的挑战。
本周提前排入队列的一个补丁,在 Linux 6.18 合并窗口开启之前移除了 write_cache_pages。这反过来将导致非 GPL 树外文件系统在从页面缓存写入脏数据时出现问题。在 NTFS3 和 Bcachefs 树内用户从迭代器移除后,对于 Linux 6.18,依赖于树外、非 GPL 文件系统的 “write_cache_pages” 将被移除。
这个补丁由 Christoph Hellwig 提供,现在已包含在 Linux 6.18 的 linux-next 中,并且由于没有树内用户,现在杀死了 write_cache_pages。
树外 OpenZFS 文件系统是 write_cache_pages 的用户之一。
Phoronix 读者向我指出这个与树外文件系统驱动程序相关的待决冲突,并在一条消息中评论道:
“随着 file_operation.writepage 和 write_cache_pages()的移除,树外非 GPL 文件系统不再能够将脏页从页缓存中写出来。
可能可以使用非 RCU 接口遍历内部 xarray 以搜索要写入的脏页,但这将是一个严重的层违规。更不用说性能会受到严重影响。”
我们将看到在 12 月份发布的稳定版 Linux 6.18 内核发布后,未来几周/几个月的情况将如何发展。
转自 Linux 6.18 Will Further Complicate Non-GPL Out-Of-Tree File-Systems – Phoronix
Linuxeden开源社区