
在以前的 Linux 内核版本中的原子写入准备工作的基础上,在 Linux 6.16 周期中合并了对 XFS 文件系统的原子写入支持。
昨天合并到 Linux Git 的是 XFS 对原子写入的支持。负责 XFS 原子写入支持的 Oracle 工程师 John Garry 在早期的补丁系列中解释了此功能:
“目前对 xfs 的原子写入支持仅限于写入单个块,因为我们无法保证对齐并且写入覆盖单个范围。
本系列介绍了一种通过基于软件的方法发出原子写入的方法。
基于软件的方法用作尝试对未对齐或多个扩展数据块发出原子写入时的回退。
对于 xfs,此支持基于 reflink CoW 支持。
这种 CoW 方法的基本思想是在 CoW fork 中分配一个范围,写入数据,并原子地更新 Map。
初始 mysql 性能测试表明此方法执行良好。但是,我们只使用 16K 原子写入(和 4K 块大小),因此通常 – 值得庆幸的是 – 这种软件回退方法不会经常使用。
Linux 6.16 的 XFS 文件系统更新还删除了有关 pNFS、scrub 和父指针功能的实验性警告。
通过此拉取,有关 Linux 6.16 的这些 XFS 功能更新的更多详细信息。
转自 XFS Atomic Writes Support Merged For Linux 6.16 – Phoronix
Linuxeden开源社区