Executive brief
A race condition was identified in the Linux kernel's writeback mechanism, which manages how data is saved from memory to disk. When a container or process exits and unmounts a filesystem, a timing error can cause the system to crash or experience a 'use-after-free' error where the system tries to access memory that has already been cleared. This primarily impacts system stability and availability, potentially leading to a kernel crash (BUG_ON) during routine container operations.
Technical details
A race condition exists between cgroup_writeback_umount() and inode_switch_wbs() / cleanup_offline_cgwb(). The vulnerability occurs because a window exists between inode_prepare_wbs_switch() passing the SB_ACTIVE check and the subsequent wb_queue_isw() call. During this window, an unmount operation (generic_shutdown_super) can clear the SB_ACTIVE flag and proceed to destroy per-CPU counters while a writeback switcher still holds a reference to an inode. This results in a 'Busy inodes after unmount' BUG_ON() or a use-after-free when the switcher later attempts to decrement the destroyed counters. The fix involves extending RCU read-side critical sections and adding synchronize_rcu() to ensure all in-flight switchers complete before the unmount process drains the workqueues.
Affected products
- Linux Linux kernel 5.10.y, 6.6.y, and others prior to the fix
Timeline
- 2026-07-16: patched: Initial patch authored
- 2026-07-24: patched: Patch committed to stable tree
- 2026-07-25: disclosed: CVE published
References
- https://git.kernel.org/stable/c/087d5b8b501c570f84bf655164e6698c3ce146e0
- https://git.kernel.org/stable/c/3c9c9648f77e4d14e50676bc51c2174ba9c8d361
- https://git.kernel.org/stable/c/53eeaf4d63068dbc7708b0c7adb20151c812feca
- https://git.kernel.org/stable/c/5c3265f3252b2ee50707adaaa3f9bd0df3df72de
- https://git.kernel.org/stable/c/685fc15a410885b6d4dee64de0dce721b9428b12
- https://git.kernel.org/stable/c/c923cc3cb5cd8945ceaf08252754110643446593
- https://git.kernel.org/stable/c/cba38ec4cbd3a7b8b942a8d52531a05be8a9ff0d