Live › vulnerability › CVE-2026-99251
A retry loop in the Linux kernel's Hyper-V driver (init_vp_index) can never finish when a NUMA node has no housekeeping CPU. The sources describe a hang or denial of service, not code execution or data access.
Summary written from the sources below. Check the originals before acting.
First seen by InfraStack 2026-11-03 12:20 UTC. All times on this page are UTC.
Systems running the Linux kernel as a Hyper-V guest where housekeeping CPUs (managed IRQ) are restricted and a NUMA node has none of them. The sources do not say which kernel versions are affected or how often this occurs in practice. Systems not running Hyper-V guests are unlikely to be affected.
No product ranges from the sources yet.
Unknown from the sources.
Unknown from the sources.
Each row is the first time that source carried this signal. The analyst’s rows are its own findings.
In the Linux kernel, the following vulnerability has been resolved:
Drivers: hv: Avoid infinite retry loop in init_vp_index()
There is a retry loop in init_vp_index() where the CPUs from a certain node are stripped out if they have already been in the allocated cpumask or not in HK_TYPE_MANAGED_IRQ housekeeping cpumask. If there is no CPU left, the allocated cpumask is ignored and the process is retried again. However, if the HK_TYPE_MANAGED_IRQ 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 init_vp_index(). 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.
This page as .md · .json · in your agent: get_signal("CVE-2026-99251")
NVD data is provided by NIST and is public domain. Posts quoted belong to their authors.