Executive brief
A vulnerability in the Linux kernel's Device Mapper (dm-cache) component could lead to data loss when switching storage modes. The system incorrectly handles 'dirty' data—information that has been written to the cache but not yet saved to the main storage—when transitioning to a passthrough mode. This flaw could result in permanent data corruption or loss during specific disk management operations, such as those performed by LVM (Logical Volume Manager).
Technical details
A race condition or logic error exists in the Linux kernel's dm-cache target when switching to passthrough mode. The implementation assumed that table reloads only occur after a device suspension; however, LVM's table preloading mechanism violates this assumption. Because dirty mapping checks were performed during table creation rather than the preresume phase, metadata updates occurring during a preload could allow dirty blocks to be loaded into passthrough mode. This bypasses the requirement that all blocks must be clean before entering passthrough, risking data inconsistency and loss. The fix moves these validation checks to the preresume phase to ensure they occur after metadata is stable.
Affected products
- Linux Linux Kernel Affected from 2ee57d587357 to c2e86f647561
Timeline
- 2026-06-24: disclosed
- 2026-06-24: advisory
References
- https://git.kernel.org/stable/c/01b22656d8a68dbeae59f8b80866e7b11936b20a
- https://git.kernel.org/stable/c/12105c7f18375d7615dad7605d89eadae7eb12a6
- https://git.kernel.org/stable/c/1443c32f24d6d8bcdf4beceef2afc09290b98717
- https://git.kernel.org/stable/c/21c503d60a257e54ca3ac58e2721bd24501d5bde
- https://git.kernel.org/stable/c/322586745bd1a0e5f3559fd1635fdeb4dbd1d6b8
- https://git.kernel.org/stable/c/5c98a3f1d7a554c9e920aa31daf92af6b5bbb8cc
- https://git.kernel.org/stable/c/bd5a2c1018938e6b32670728bdb32a3f0efff00f