Advancing Data Integrity in Linux
summary
Adds a PI offset so the block layer accepts NVMe metadata with PI at the buffer end (merged in Linux 6.9), and exposes a user-space PI API via io_uring ATTR_PI (merged in 6.14) so applications can supply per-block protection info. Implements FS-PI in BTRFS and XFS where filesystems generate and verify PI, avoid Btrfs checksum-tree updates, and add XFS data checksums. FIO-based evaluation shows Btrfs: +26% throughput, −58% host CPU, −52% device writes, ~+23% SSD lifetime.
AI-written summary · about
chapters (10)
- 0:00Data integrity in Linux
- 0:18Current integrity stack gaps
- 1:45Protection Information types
- 3:10Limitations of integrity handling
- 3:32NVMe PI support
- 4:38io_uring PI interface
- 7:06File system PI design
- 9:14Btrfs XFS details
- 11:18Btrfs XFS results
- 13:29Summary and conclusion
related talks
32mUsing Linux Block Integrity in Building and Testing Storage Systems
45mData Placement in Linux: Evolving Block and File I/O
19mI/O Passthru: Upstreaming a flexible and efficient I/O Path in Linux
38mRethinking Writeback: Scaling Linux Filesystem and Memory Performance for the Next Decade
43mThe Forefront of the Development for NVDIMM on Linux Kernel
45mLinux Storage Stack Explained
12mpFSCK: Accelerating File System Checking and Repair for Modern Storage
19mSubsystem Update: Linux Integrity Status Update
