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.
Published: 2026-09-25
Score: 5.5 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Kernel Crash / Denial of Service
Action: Apply Patch
AI Analysis

Impact

In the Linux kernel, the cpufreq subsystem allocates a policy->cpus mask without zero‑initialising it when CONFIG_CPUMASK_OFFSTACK is enabled. During early sysfs publication the mask contains garbage bits, so attribute callbacks that normally run only on fully initialised policies are invoked with a policy that is not ready. This can lead to undefined kernel behaviour, potentially causing a crash or other instability that renders the system unusable.

Affected Systems

The issue affects any Linux kernel that builds the cpufreq subsystem with CONFIG_CPUMASK_OFFSTACK=y. No specific kernel versions are listed, so the problem is likely present in all affected builds until the patch is applied.

Risk and Exploitability

The CVSS score is 5.5, the EPSS score is less than 1%, and the vulnerability is not listed in the CISA KEV catalog. It can cause a kernel crash or denial of service; thus the potential impact is significant. The likelihood of exploitation depends on an attacker’s ability to trigger the uninitialised sysfs attributes, which may be limited but still represents a risk for systems exposed to malicious users. Based on the description, the likely attack vector is local or privileged access to the cpufreq sysfs interface before the policy is fully initialised.

Generated by OpenCVE AI on October 1, 2026 at 08:48 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Update the kernel to a version that includes the zalloc_cpumask_var() patch for cpufreq_policy_alloc()
  • If immediate kernel upgrade is not feasible, rebuild the kernel with CONFIG_CPUMASK_OFFSTACK disabled to prevent the allocation of off‑stack cpumasks
  • After disabling the option, reboot the system and verify that the cpufreq sysfs entries respond correctly without causing crashes

Generated by OpenCVE AI on October 1, 2026 at 08:48 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Debian DLA Debian DLA DLA-4817-1 linux-6.12 security update
Debian DLA Debian DLA DLA-4841-1 linux security update
Debian DSA Debian DSA DSA-6528-1 linux security update
Ubuntu USN Ubuntu USN USN-8961-1 Linux kernel vulnerabilities
History

Sat, 03 Oct 2026 11:15:00 +0000


Thu, 01 Oct 2026 07:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-457

Wed, 30 Sep 2026 00:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-908
References
Metrics threat_severity

None

cvssV3_1

{'score': 5.5, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H'}

threat_severity

Low


Fri, 25 Sep 2026 14:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-457

Fri, 25 Sep 2026 10:30:00 +0000

Type Values Removed Values Added
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.
Title cpufreq: zero-initialize policy cpumask before sysfs publication
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-10-19T09:10:31.498Z

Reserved: 2026-09-25T10:18:58.200Z

Link: CVE-2026-97905

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-09-25T11:17:17.403

Modified: 2026-10-19T10:17:40.887

Link: CVE-2026-97905

cve-icon Redhat

Severity : Low

Publid Date: 2026-09-25T00:00:00Z

Links: CVE-2026-97905 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-10-01T09:00:05Z

Weaknesses
  • CWE-908

    Use of Uninitialized Resource