CVE-2026-53126
Description
In the Linux kernel, the following vulnerability has been resolved:
blk-cgroup: fix disk reference leak in blkcg_maybe_throttle_current()
Add the missing put_disk() on the error path in
blkcg_maybe_throttle_current(). When blkcg lookup, blkg lookup, or
blkg_tryget() fails, the function jumps to the out label which only
calls rcu_read_unlock() but does not release the disk reference acquired
by blkcg_schedule_throttle() via get_device(). Since current->throttle_disk
is already set to NULL before the lookup, blkcg_exit() cannot release
this reference either, causing the disk to never be freed.
Restore the reference release that was present as blk_put_queue() in the
original code but was inadvertently dropped during the conversion from
request_queue to gendisk.
Summary dbcve.org
A disk reference leak exists in blkcg_maybe_throttle_current() in the Linux kernel's blk-cgroup subsystem. When blkcg lookup, blkg lookup, or blkg_tryget() fails, the function jumps to the 'out' label which only calls rcu_read_unlock() but fails to release a disk reference acquired earlier by blkcg_schedule_throttle() via get_device(). Since current->throttle_disk is set to NULL before the lookup, blkcg_exit() cannot release this reference either, causing a permanent resource leak.
Mitigation
Apply the kernel patch that adds the missing put_disk() call on the error path in blkcg_maybe_throttle_current() to restore proper disk reference release that was inadvertently dropped during the request_queue to gendisk conversion.