CVE-2026-93795
N/A
Summary
In the Linux kernel, the following vulnerability has been resolved:
blk-cgroup: fix leaks and online flag on radix_tree_insert failure
When radix_tree_insert() fails in blkg_create(), the error path has two issues:
blkg->online is set to true unconditionally, even when the blkg was never fully inserted. Move the assignment inside the success block.
The error path calls blkg_put() without first calling percpu_ref_kill(). Because the refcount is still in percpu mode, percpu_ref_put() only does this_cpu_sub() without checking for zero, so blkg_release() is never triggered. This permanently leaks the blkg memory, its percpu iostat, policy data, the parent blkg reference, and the cgroup css reference — the latter preventing the cgroup from ever being destroyed.
Fix by replacing blkg_put() with percpu_ref_kill(), matching the pattern used in blkg_destroy().
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < 6e85f02d45b5977c0326a8d854c6db878aa6b34a | affected |
| Linux | Linux | 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < 4c0d150fb98ea40760611979f4e664c244b20966 | affected |
| Linux | Linux | 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < dbbca20764382b4d411ec2918f4e278ffe547acc | affected |
| Linux | Linux | 0 < 6.12.111 | affected |
| Linux | Linux | 0 < 6.18.53 | affected |
| Linux | Linux | 6.12.111 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.53 <= 6.18.* | unaffected |
| Linux | Linux | 7.2 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/6e85f02d45b5977c0326a8d854c6db878aa6b34a
- https://git.kernel.org/stable/c/4c0d150fb98ea40760611979f4e664c244b20966
- https://git.kernel.org/stable/c/dbbca20764382b4d411ec2918f4e278ffe547acc
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.