Microsoft 的著名 Linux 开发人员 Christian Brauner 已开始为即将到来的 Linux 6.13 合并窗口发送各种 VFS 功能更改的拉取请求。一个有趣的早期拉取请求是 VFS 解压写入系列,该系列为 EXT4 和 XFS 文件系统启用了原子写入支持。
在 Linux 6.11 中,启用了 NVMe 和 SCSI 支持,对块设备提供了原子写入支持。在 Linux 6.13 中,原子写入支持扩展到文件系统,EXT4 和 XFS 最初受益。
Christian Brauner 在 VFS untorn writes pull request 中解释道:
“原子写入是具有撕裂写入保护的写入。这意味着,如果发生电源故障或任何硬件故障,将存储写入中的所有数据或不存储任何数据,绝不会存储新旧数据的混合。
块设备已经支持这项工作。如果用 O_DIRECT 打开块设备,并且块设备支持原子写入,则FMODE_CAN_ATOMIC_WRITE将添加到打开的块设备的文件中。
此拉取请求包含将原子写入支持扩展到文件系统(特别是 ext4 和 XFS)的工作。目前,只添加了对原子写入一个文件系统块的支持。
由于现在可以为 XFS 提供文件系统块大小>页面大小,因此可以在 x86 上以原子方式写入 4K+ 块。
Linux 6.13 功能不断堆积,这将是 v6.13 合并窗口接下来两周的有趣之处。
转自 Linux 6.13 To Expand Atomic Write Support To EXT4 & XFS – Phoronix