CVE-2026-53129
N/A
Summary
In the Linux kernel, the following vulnerability has been resolved:
fs/mbcache: cancel shrink work before destroying the cache
mb_cache_destroy() calls shrinker_free() and then frees all cache entries and the cache itself, but it does not cancel the pending c_shrink_work work item first.
If mb_cache_entry_create() schedules c_shrink_work via schedule_work() and the work item is still pending or running when mb_cache_destroy() runs, mb_cache_shrink_worker() will access the cache after its memory has been freed, causing a use-after-free.
This is only reachable by a privileged user (root or CAP_SYS_ADMIN) who can trigger the last put of a mounted ext2/ext4/ocfs2 filesystem.
Cancel the work item with cancel_work_sync() before calling shrinker_free(), ensuring the worker has finished and will not be rescheduled before the cache is torn down.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | c2f3140fe2eceb3a6c1615b2648b9471544881c6 < a88d39a74a208e197c03bffaa2df34de732af19f | affected |
| Linux | Linux | c2f3140fe2eceb3a6c1615b2648b9471544881c6 < 0e4eff315d799f5842b95872199b0f0fb8ef5f51 | affected |
| Linux | Linux | c2f3140fe2eceb3a6c1615b2648b9471544881c6 < b25fd3523bef88fb7ffd4c5b63bbe9c08f73bb4c | affected |
| Linux | Linux | c2f3140fe2eceb3a6c1615b2648b9471544881c6 < d227786ab1119669df4dc333a61510c52047cce4 | affected |
| Linux | Linux | 4.6 | affected |
| Linux | Linux | 0 < 4.6 | unaffected |
| Linux | Linux | 6.12.91 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.33 <= 6.18.* | unaffected |
| Linux | Linux | 7.0.10 <= 7.0.* | unaffected |
| Linux | Linux | 7.1 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/a88d39a74a208e197c03bffaa2df34de732af19f
- https://git.kernel.org/stable/c/0e4eff315d799f5842b95872199b0f0fb8ef5f51
- https://git.kernel.org/stable/c/b25fd3523bef88fb7ffd4c5b63bbe9c08f73bb4c
- https://git.kernel.org/stable/c/d227786ab1119669df4dc333a61510c52047cce4
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.