CVE-2026-97905
Description
In the Linux kernel, the following vulnerability has been resolved: cpufreq: zero-initialize policy cpumask before sysfs publication cpufreq_policy_alloc() allocates policy->cpus with alloc_cpumask_var(), i.e. without __GFP_ZERO, unlike the sibling related_cpus and real_cpus masks. With CONFIG_CPUMASK_OFFSTACK=y the mask is a separate kmalloc_node() allocation, so its bitmap holds whatever the slab allocator left behind: cpufreq_online() cpufreq_policy_alloc() alloc_cpumask_var(&policy->cpus) /* bitmap is uninitialized */ kobject_init_and_add() /* policy%u/ appears in sysfs */ cpufreq_policy_online() cpumask_copy(policy->cpus, cpumask_of(cpu)) /* first valid value */ This leaves a window in which the sysfs attributes are already reachable while policy->cpus is still garbage. show()/store() gate on policy_is_inactive(), i.e. cpumask_empty(policy->cpus), so a non-zero bitmap makes them run the attribute callbacks on a policy that is not initialized yet. Fix this by using zalloc_cpumask_var() for policy->cpus.
How to fix
- Linux Linuxe13370c5b549712f49f80234df249303381c53b4, e807920031ca32b668f9e7a1efbd21858f03d64b, ca52482508b3ac9febe74ca4f732647d394727b8, 06f273d29e5e0fe5c775a65c563fbeed8cd94c7a, 0de2f3918fbbbb767e7e716178194b66560dd12a, 6e166b9281dec98aed19213a84235250e5fdb081, bbc0472d2270bf732142ca71579d6ede636174ed, 54d37bcf2f497140b9207968557ddb484058e749 or later
Affected products
| Product | Affected versions | Fixed in |
|---|---|---|
| Linux Linux | 2fc3384dc75bf7333384c7a16d12c796f61c3f56 ≤ v < e13370c5b549712f49f80234df249303381c53b4, 2fc3384dc75bf7333384c7a16d12c796f61c3f56 ≤ v < e807920031ca32b668f9e7a1efbd21858f03d64b, 2fc3384dc75bf7333384c7a16d12c796f61c3f56 ≤ v < ca52482508b3ac9febe74ca4f732647d394727b8, 2fc3384dc75bf7333384c7a16d12c796f61c3f56 ≤ v < 06f273d29e5e0fe5c775a65c563fbeed8cd94c7a, 2fc3384dc75bf7333384c7a16d12c796f61c3f56 ≤ v < 0de2f3918fbbbb767e7e716178194b66560dd12a, 2fc3384dc75bf7333384c7a16d12c796f61c3f56 ≤ v < 6e166b9281dec98aed19213a84235250e5fdb081, 2fc3384dc75bf7333384c7a16d12c796f61c3f56 ≤ v < bbc0472d2270bf732142ca71579d6ede636174ed, 2fc3384dc75bf7333384c7a16d12c796f61c3f56 ≤ v < 54d37bcf2f497140b9207968557ddb484058e749, 4.2 | e13370c5b549712f49f80234df249303381c53b4, e807920031ca32b668f9e7a1efbd21858f03d64b, ca52482508b3ac9febe74ca4f732647d394727b8, 06f273d29e5e0fe5c775a65c563fbeed8cd94c7a, 0de2f3918fbbbb767e7e716178194b66560dd12a, 6e166b9281dec98aed19213a84235250e5fdb081, bbc0472d2270bf732142ca71579d6ede636174ed, 54d37bcf2f497140b9207968557ddb484058e749 |
Check your version
Choose the product and enter the version you run to see whether it falls in the affected range.
Attack Surface Management
See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.