AZL-112607: CVE-2026-99251 affecting package kernel 6.6.159.1-1
In the Linux kernel, the following vulnerability has been resolved:
Drivers: hv: Avoid infinite retry loop in initvpindex()
There is a retry loop in initvpindex() where the CPUs from a certain node are stripped out if they have already been in the allocated cpumask or not in HKTYPEMANAGEDIRQ housekeeping cpumask. If there is no CPU left, the allocated cpumask is ignored and the process is retried again. However, if the HKTYPEMANAGEDIRQ housekeeping cpumask turns out not to contain any CPU in that particular node, that will become an infinite retry loop. This particular problem was reported by sashiko [1]. This should rarely happen, but we still need to guard against this.
Fix this infinite loop problem by also skipping NUMA node that has no housekeeping CPU in the inner while loop of initvpindex(). Also update the early abort check to check for the absence of online housekeeping CPUs instead of just the emptiness of the cpumask. As the outer for loop will only be reached if the housekeeping cpumask has at least one online CPU, a NUMA node with housekeeping CPUs will eventually be found.
Affected Software
Event History
Frequently Asked Questions
What system configuration can trigger the infinite retry loop?
The loop can occur when a NUMA node has no CPU in the HK_TYPE_MANAGED_IRQ housekeeping CPU mask. The affected path repeatedly retries CPU-mask allocation for that node without finding an eligible CPU.
Does the issue require all housekeeping CPUs to be absent?
No. The problematic condition is a particular NUMA node lacking housekeeping CPUs, even if housekeeping CPUs exist elsewhere. The described fix skips such nodes and checks for online housekeeping CPUs during the early-abort path.
What is the likely operational impact if triggered?
The affected init_vp_index() path can enter an infinite retry loop. This can prevent that initialization from completing.