CVE-2026-99065: Linux kernel · cgroup/cpuset: Handle cpu hotplug race in guarantee_active_cpus()
Source GCVE Database
Not known to be exploited · fixed in a21c255159bfe0034740292e10d2e258feeeb10d : update Linux kernel when convenient.
Data as of 26 Oct 2026, 13:47 UTC
Rated by Threat Radar · CVSS not yet scored by NVD
- EPSS
- 0.1% chance of exploitation in 30 days – higher than 5% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
- Patch
- Available – fixed in a21c255159bfe0034740292e10d2e258feeeb10d, 23b1ab15ca91f2cffaf149d9bb0fafeb700c7db2, 8d88d3221204fbb1b6dc2c0f2f2181fe49126639
Exploitation evidence
Disclosed: evidence found.
CVE published 23 Oct 2026
Detectable: no evidence on record.
No public nuclei template indexed
Weaponised: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 26 Oct 2026.
What to do
Upgrade Linux kernel to a21c255159bfe0034740292e10d2e258feeeb10d, 23b1ab15ca91f2cffaf149d9bb0fafeb700c7db2 or 8d88d3221204fbb1b6dc2c0f2f2181fe49126639.
Affected software
| Product | Affected | Fixed in |
|---|---|---|
| LinuxLinux | Affected
| Fixed in
|
| LinuxLinux | Affected
| Fixed in
|
| LinuxLinux | Affected
| Fixed in
|
| LinuxLinux | Affected
| Fixed in– |
Description
In the Linux kernel, the following vulnerability has been resolved: cgroup/cpuset: Handle cpu hotplug race in guarantee_active_cpus() With commit 2125c0034c5d ("cgroup/cpuset: Make cpuset hotplug processing synchronous"), the cpuset hotplug operation becomes synchronous. That commit also removes the code that handles race between cpuset_hotplug_work and cpu hotplug notifier with the assumption that race is now gone. Later commit 7a0aabd9ce69 ("cgroup/cpuset: Always use cpu_active_mask") updates the cpuset code to always use cpu_active_mask instead of cpu_online_mask in some places including guarantee_online_cpus() which is renamed to guarantee_active_cpus() in that commit. In the case of CPU offline operation, cpu_active_mask is updated first in sched_cpu_deactivate() to remove the offline CPU before cpuset_handle_hotplug() is called to update the effective_cpus of the affected cpusets. The cpu_online_mask is updated after that near the end of the offline operation to remove the offline CPU. As a result, the race comes back and the top cpuset may not have any active CPU leading to NULL pointer dereference during the race window when guarantee_active_cpus() is called after cpu_active_mask is updated to remove the CPU to be torn down but before cpuset_handle_hotplug() is able to properly update the effective_cpus of the top cpuset. Fix this by adding back the NULL cs check to avoid this problem.
References
- nvd.nist.gov/vuln/detail/CVE-2026-99065 (opens in a new tab)
- git.kernel.org/stable/c/23b1ab15ca91f2cffaf149d9bb0fafeb700c7db2 (opens in a new tab)
- git.kernel.org/stable/c/8d88d3221204fbb1b6dc2c0f2f2181fe49126639 (opens in a new tab)
- git.kernel.org/stable/c/a21c255159bfe0034740292e10d2e258feeeb10d (opens in a new tab)