cgroup v2 I/O controller
The cgroup v2 I/O controller accounts for and regulates block-device I/O for hierarchical groups of Linux processes.
io.stat reports device-keyed byte and operation counts. io.max sets directional bytes-per-second and IOPS limits; temporary bursts are permitted. [1]
Buffered writeback needs filesystem support. Its ownership is per inode, can switch between groups, and can misattribute concurrent cross-group writers. This differs from per-process accounting. [2]
IOCost models request cost rather than equating bytes or operation counts with device occupancy; its memory-reclaim path can issue over-budget I/O on credit to avoid blocking another group. This is a source-described control mechanism, not a host measurement. [3]
Relations
Limitations
- These counters do not certify crash durability. [1]
Citations
- Linux 6.12: cgroup v2 I/O interface and writeback
- Linux 6.12: cgroup writeback ownership
- Heo et al.: IOCost, ASPLOS 2022, sections 3.2-3.5; DOI 10.1145/3503222.3507727
Sources & caveats
- Source synthesis from Linux 6.12 documentation; no new host measurements or universal performance guarantee.