Impact
The vulnerability arises when the kernel incorrectly restores the IRQ state inside the block‑group lookup routine. When a caller has already disabled interrupts and the function takes a lock with spin_lock_irq(), the nested use of spin_unlock_irq() re‑enables interrupts while the lock is still held. This allows an I/O completion softirq to run on the same CPU, reacquire the lock, and eventually deadlock. The flaw creates a block‑level deadlock that can halt kernel operations and freeze the system, effectively crashing services that rely on block I/O.
Affected Systems
All Linux kernel releases that contain the blkg_tryget_closest() routine as described are vulnerable. No specific kernel versions were named, so any installation of the Linux kernel that uses blk‑cgroup without the fix is potentially affected.
Risk and Exploitability
The fault can be exploited by code executing with kernel privileges, either from local userland with elevated rights or from a compromised kernel module. Because the issue is a timing and interrupt handling bug, it does not require network interaction. The impact is a kernel deadlock leading to denial of service. The CVSS score of 4.7 indicates a moderate severity, and the EPSS score of < 1% shows low likelihood of exploitation. The vulnerability is not listed in CISA KEV, but the presence of a kernel deadlock is a serious weakness.
OpenCVE Enrichment