CVE-2025-40346 json
arch_topology: Fix incorrect error check in topology_parse_cpu_capacity()
published 2025-12-16 10 mo ago modified 2026-10-14 25 d ago also EUVD-2025-203641
- cvss
- —
- not scored
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.2%
- EPSS 0.2% chance of exploitation in 30 days, percentile 10%
- public exploits
- 0
- none known
Summary
In the Linux kernel, the following vulnerability has been resolved:
arch_topology: Fix incorrect error check in topology_parse_cpu_capacity()
Fix incorrect use of PTR_ERR_OR_ZERO() in topology_parse_cpu_capacity() which causes the code to proceed with NULL clock pointers. The current logic uses !PTR_ERR_OR_ZERO(cpu_clk) which evaluates to true for both valid pointers and NULL, leading to potential NULL pointer dereference in clk_get_rate().
Per include/linux/err.h documentation, PTR_ERR_OR_ZERO(ptr) returns: "The error code within @ptr if it is an error pointer; 0 otherwise."
This means PTR_ERR_OR_ZERO() returns 0 for both valid pointers AND NULL pointers. Therefore !PTR_ERR_OR_ZERO(cpu_clk) evaluates to true (proceed) when cpu_clk is either valid or NULL, causing clk_get_rate(NULL) to be called when of_clk_get() returns NULL.
Replace with !IS_ERR_OR_NULL(cpu_clk) which only proceeds for valid pointers, preventing potential NULL pointer dereference in clk_get_rate().
Patch / fix
- Linux Linux 5.10.246, 5.15.196, 6.1.158, 6.6.115, 6.12.56, 6.17.6, 6.18
- linux Debian 12 6.1.158-1
- linux Debian 13 6.12.57-1
- linux Debian 14 6.17.6-1
debian advisories DEBIAN-CVE-2025-40346
- linux Ubuntu 22.04 LTS 5.15.0-170.180
- linux Ubuntu 24.04 LTS 6.8.0-106.106
- linux Ubuntu 25.10 6.17.0-14.14
- linux-aws Ubuntu 22.04 LTS 5.15.0-1100.107
- linux-aws Ubuntu 24.04 LTS 6.8.0-1050.53
- linux-aws Ubuntu 25.10 6.17.0-1007.7
- linux-gcp Ubuntu 22.04 LTS 5.15.0-1100.109
- linux-gcp Ubuntu 24.04 LTS 6.8.0-1052.55
ubuntu advisories UBUNTU-CVE-2025-40346
Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- kernel-rt Linux Micro 6.1, Linux Micro 6.0 6.4.0-40.1
- kernel-source-rt Linux Micro 6.1, Linux Micro 6.0 6.4.0-40.1
- kernel-source Linux Micro 6.1, Linux Micro 6.0 6.4.0-39.1
- kernel-default Linux Micro 6.1, Linux Micro 6.0 6.4.0-39.1
- kernel-kvmsmall Linux Micro 6.1, Linux Micro 6.0 6.4.0-39.1
- kernel-default-base Linux Micro 6.1, Linux Micro 6.0 6.4.0-39.1.21.16
- kernel-rt Linux Micro 6.2 6.12.0-160000.9.1
- kernel-64kb SLES 16.0, Linux Micro 6.2, SLES for SAP applications 16.0 6.12.0-160000.9.1
suse advisories SUSE-SU-2026:20845-1SUSE-SU-2026:20876-1SUSE-SU-2026:20477-1SUSE-SU-2026:20498-1SUSE-SU-2026:20207-1SUSE-SU-2026:20220-1
- kernel-rt openSUSE Leap 16.0 6.12.0-160000.9.1
- dtb-aarch64 openSUSE Leap 16.0 6.12.0-160000.9.1
- kernel-64kb openSUSE Leap 16.0 6.12.0-160000.9.1
- kernel-syms openSUSE Leap 16.0 6.12.0-160000.9.1
- kernel-azure openSUSE Leap 16.0 6.12.0-160000.9.1
- kernel-obs-qa openSUSE Leap 16.0 6.12.0-160000.9.1
- kernel-source openSUSE Leap 16.0 6.12.0-160000.9.1
- kernel-default openSUSE Leap 16.0 6.12.0-160000.9.1
opensuse advisories openSUSE-SU-2026:20145-1
- git.kernel.org/stable/c/64da320252e43456cc9ec3055ff567f168467b37 commit
- git.kernel.org/stable/c/02fbea0864fd4a863671f5d418129258d7159f68 commit
- git.kernel.org/stable/c/a77f8434954cb1e9c42c3854e40855fdcf5ab235 commit
- git.kernel.org/stable/c/3373f263bb647fcc3b5237cfaef757633b9ee25e commit
- git.kernel.org/stable/c/45379303124487db3a81219af7565d41f498167f commit
- git.kernel.org/stable/c/3a01b2614e84361aa222f67bc628593987e5cdb2 commit
- git.kernel.org/stable/c/2eead19334516c8e9927c11b448fbe512b1f18a1 commit
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2025-40346 updated cvss 5.5
kernel: arch_topology: Fix incorrect error check in topology_parse_cpu_capacity()
-
Red Hat Enterprise Linux 9 rv, perf, rtla, kernel, bpftool, libperf, +83 more Red Hat Enterprise Linux 10 kernelaffected: no fix available “Fix deferred”
-
Red Hat Enterprise Linux 6 perf, kernel, python-perf, kernel-kdump, kernel-firmware, kernel-bootwrapper, +1 more Red Hat Enterprise Linux 7 perf, kernel, bpftool, kernel-rt, python-perf, kernel-kdump, +8 more Red Hat Enterprise Linux 8 perf, kernel, bpftool, kernel-rt, kernel-core, kernel-tools, +29 morenot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
Exploit prediction
0.21% chance of exploitation in the next 30 days, higher than 10% of all scored CVEs (FIRST EPSS, 2026-11-08).
Affected products
- Linux Linux
Classification
- Technology feeds
References
- git.kernel.org /stable/c/64da320252e43456cc9ec3055ff567f168467b37
- git.kernel.org /stable/c/02fbea0864fd4a863671f5d418129258d7159f68
- git.kernel.org /stable/c/a77f8434954cb1e9c42c3854e40855fdcf5ab235
- git.kernel.org /stable/c/3373f263bb647fcc3b5237cfaef757633b9ee25e
- git.kernel.org /stable/c/45379303124487db3a81219af7565d41f498167f
- git.kernel.org /stable/c/3a01b2614e84361aa222f67bc628593987e5cdb2
- git.kernel.org /stable/c/2eead19334516c8e9927c11b448fbe512b1f18a1
Sources
- CVE List CVE-2025-40346
- NVD CVE-2025-40346
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.