CVE-2025-38295: perf/amlogic: Replace smp_processor_id() with raw_smp_processor_id() in meson_ddr_pmu_create()
In the Linux kernel, the following vulnerability has been resolved:
perf/amlogic: Replace smpprocessorid() with rawsmpprocessorid() in mesonddrpmucreate()
The Amlogic DDR PMU driver mesonddrpmucreate() function incorrectly uses smpprocessorid(), which assumes disabled preemption. This leads to kernel warnings during module loading because mesonddrpmucreate() can be called in a preemptible context.
Following kernel warning and stack trace: [ 31.745138] [ T2289] BUG: using smpprocessorid() in preemptible [00000000] code: (udev-worker)/2289 [ 31.745154] [ T2289] caller is debugsmpprocessorid+0x28/0x38 [ 31.745172] [ T2289] CPU: 4 UID: 0 PID: 2289 Comm: (udev-worker) Tainted: GW 6.14.0-0-MANJARO-ARM #1 59519addcbca6ba8de735e151fd7b9e97aac7ff0 [ 31.745181] [ T2289] Tainted: [W]=WARN [ 31.745183] [ T2289] Hardware name: Hardkernel ODROID-N2Plus (DT) [ 31.745188] [ T2289] Call trace: [ 31.745191] [ T2289] showstack+0x28/0x40 (C) [ 31.745199] [ T2289] dumpstacklvl+0x4c/0x198 [ 31.745205] [ T2289] dumpstack+0x20/0x50 [ 31.745209] [ T2289] checkpreemptiondisabled+0xec/0xf0 [ 31.745213] [ T2289] debugsmpprocessorid+0x28/0x38 [ 31.745216] [ T2289] mesonddrpmucreate+0x200/0x560 [mesonddrpmug12 8095101c49676ad138d9961e3eddaee10acca7bd] [ 31.745237] [ T2289] g12ddrpmuprobe+0x20/0x38 [mesonddrpmug12 8095101c49676ad138d9961e3eddaee10acca7bd] [ 31.745246] [ T2289] platformprobe+0x98/0xe0 [ 31.745254] [ T2289] reallyprobe+0x144/0x3f8 [ 31.745258] [ T2289] driverprobedevice+0xb8/0x180 [ 31.745261] [ T2289] driverprobedevice+0x54/0x268 [ 31.745264] [ T2289] driverattach+0x11c/0x288 [ 31.745267] [ T2289] busforeachdev+0xfc/0x160 [ 31.745274] [ T2289] driverattach+0x34/0x50 [ 31.745277] [ T2289] busadddriver+0x160/0x2b0 [ 31.745281] [ T2289] driverregister+0x78/0x120 [ 31.745285] [ T2289] platformdriverregister+0x30/0x48 [ 31.745288] [ T2289] initmodule+0x30/0xfe0 [mesonddrpmug12 8095101c49676ad138d9961e3eddaee10acca7bd] [ 31.745298] [ T2289] dooneinitcall+0x11c/0x438 [ 31.745303] [ T2289] doinitmodule+0x68/0x228 [ 31.745311] [ T2289] loadmodule+0x118c/0x13a8 [ 31.745315] [ T2289] arm64sysfinitmodule+0x274/0x390 [ 31.745320] [ T2289] invokesyscall+0x74/0x108 [ 31.745326] [ T2289] el0svccommon+0x90/0xf8 [ 31.745330] [ T2289] doel0svc+0x2c/0x48 [ 31.745333] [ T2289] el0svc+0x60/0x150 [ 31.745337] [ T2289] el0t64synchandler+0x80/0x118 [ 31.745341] [ T2289] el0t64sync+0x1b8/0x1c0
Changes replaces smpprocessorid() with rawsmpprocessorid() to ensure safe CPU ID retrieval in preemptible contexts.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
ubuntu/linux-aws-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-1046.49~22.04.1 - Upgrade
Upgrade
ubuntu/linux-azure-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-1051.57~22.04.1 - Upgrade
Upgrade
ubuntu/linux-azure-fde-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-1046.53~22.04.1 - Upgrade
Upgrade
ubuntu/linux-gcp-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-1047.50~22.04.2 - Upgrade
Upgrade
ubuntu/linux-hwe-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-100.100~22.04.1 - Upgrade
Upgrade
ubuntu/linux-ibm-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-1044.44~22.04.1 - Upgrade
Upgrade
ubuntu/linux-lowlatency-hwe-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-100.100.1~22.04.1 - Upgrade
Upgrade
ubuntu/linux-nvidia-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-1046.49~22.04.1 - Upgrade
Upgrade
ubuntu/linux-oracle-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-1043.44~22.04.1 - Upgrade
Upgrade
ubuntu/linux-riscv-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-100.100~22.04.1 - Upgrade
Upgrade
ubuntu/linux-realtime-6.8to a version that resolves this vulnerability.Fixed in 6.8.1-1041.42~22.04.1 - Upgrade
Upgrade
ubuntu/linuxto a version that resolves this vulnerability.Fixed in 6.8.0-100.100 - Upgrade
Upgrade
ubuntu/linux-awsto a version that resolves this vulnerability.Fixed in 6.8.0-1046.49 - Upgrade
Upgrade
ubuntu/linux-aws-6.14to a version that resolves this vulnerability.Fixed in 6.14.0-1013.13~24.04.1 - Upgrade
Upgrade
ubuntu/linux-azureto a version that resolves this vulnerability.Fixed in 6.8.0-1046.52 - Upgrade
Upgrade
ubuntu/linux-azure-fdeto a version that resolves this vulnerability.Fixed in 6.8.0-1046.53 - Upgrade
Upgrade
ubuntu/linux-azure-nvidiato a version that resolves this vulnerability.Fixed in 6.8.0-1039.42 - Upgrade
Upgrade
ubuntu/linux-azure-nvidia-6.14to a version that resolves this vulnerability.Fixed in 6.14.0-1007.7 - Upgrade
Upgrade
ubuntu/linux-gcpto a version that resolves this vulnerability.Fixed in 6.8.0-1047.50 - Upgrade
Upgrade
ubuntu/linux-gcp-6.14to a version that resolves this vulnerability.Fixed in 6.14.0-1016.17~24.04.1 - Upgrade
Upgrade
ubuntu/linux-gketo a version that resolves this vulnerability.Fixed in 6.8.0-1043.48 - Upgrade
Upgrade
ubuntu/linux-gkeopto a version that resolves this vulnerability.Fixed in 6.8.0-1030.33 - Upgrade
Upgrade
ubuntu/linux-ibmto a version that resolves this vulnerability.Fixed in 6.8.0-1044.44 - Upgrade
Upgrade
ubuntu/linux-lowlatencyto a version that resolves this vulnerability.Fixed in 6.8.0-100.100.1 - Upgrade
Upgrade
ubuntu/linux-nvidiato a version that resolves this vulnerability.Fixed in 6.8.0-1046.49 - Upgrade
Upgrade
ubuntu/linux-nvidia-lowlatencyto a version that resolves this vulnerability.Fixed in 6.8.0-1046.49.1 - Upgrade
Upgrade
ubuntu/linux-nvidia-tegrato a version that resolves this vulnerability.Fixed in 6.8.0-1020.20 - Upgrade
Upgrade
ubuntu/linux-oem-6.14to a version that resolves this vulnerability.Fixed in 6.14.0-1012.12 - Upgrade
Upgrade
ubuntu/linux-oracleto a version that resolves this vulnerability.Fixed in 6.8.0-1043.44 - Upgrade
Upgrade
ubuntu/linux-oracle-6.14to a version that resolves this vulnerability.Fixed in 6.14.0-1013.13~24.04.1 - Upgrade
Upgrade
ubuntu/linux-raspito a version that resolves this vulnerability.Fixed in 6.8.0-1047.51 - Upgrade
Upgrade
ubuntu/linux-riscv-6.14to a version that resolves this vulnerability.Fixed in 6.14.0-32.32.1~24.04.1 - Upgrade
Upgrade
ubuntu/linux-xilinxto a version that resolves this vulnerability.Fixed in 6.8.0-1023.24 - Upgrade
Upgrade
ubuntu/linux-bluefieldto a version that resolves this vulnerability.Fixed in 6.8.0-1016.20 - Upgrade
Upgrade
ubuntu/linux-raspi-realtimeto a version that resolves this vulnerability.Fixed in 6.8.0-2037.38 - Upgrade
Upgrade
ubuntu/linux-realtimeto a version that resolves this vulnerability.Fixed in 6.8.1-1041.42 - Upgrade
Upgrade
ubuntu/linux-realtime-6.14to a version that resolves this vulnerability.Fixed in 6.14.0-1012.12~24.04.1 - Upgrade
Upgrade
ubuntu/linux-aws-fipsto a version that resolves this vulnerability.Fixed in 6.8.0-1046.49+fips1 - Upgrade
Upgrade
ubuntu/linux-azure-fipsto a version that resolves this vulnerability.Fixed in 6.8.0-1046.52+fips1 - Upgrade
Upgrade
ubuntu/linux-fipsto a version that resolves this vulnerability.Fixed in 6.8.0-100.100+fips1 - Upgrade
Upgrade
ubuntu/linux-gcp-fipsto a version that resolves this vulnerability.Fixed in 6.8.0-1047.50+fips1 - Compensating control
In the Amlogic DDR PMU driver's meson_ddr_pmu_create() function, replace smp_processor_id() with raw_smp_processor_id() to retrieve the CPU ID safely in preemptible contexts.
Event History
Frequently Asked Questions
What is the severity of CVE-2025-38295?
The severity of CVE-2025-38295 has yet to be assigned a CVSS score but involves a potential issue in the Linux kernel.
How do I fix CVE-2025-38295?
To fix CVE-2025-38295, ensure that you are using the updated version of the Linux kernel where the bug has been patched.
What software is affected by CVE-2025-38295?
CVE-2025-38295 affects the Linux Kernel, particularly in the Amlogic DDR PMU driver.
What does CVE-2025-38295 entail?
CVE-2025-38295 involves the incorrect use of smp_processor_id() in the meson_ddr_pmu_create() function of the Amlogic DDR PMU driver.
Are there any workarounds for CVE-2025-38295?
There are no specific workarounds for CVE-2025-38295; upgrading to a patched kernel is recommended.