CVE-2026-64512
N/A
Summary
In the Linux kernel, the following vulnerability has been resolved:
ACPI: CPPC: Suppress UBSAN warning caused by field misuse
The definition of reg->access_width changes depending on the reg->space_id type. Type ACPI_ADR_SPACE_PLATFORM_COMM uses access_width to indicate the PCC region, which can result in a UBSAN if the value is greater than 4.
For example:
UBSAN: shift-out-of-bounds in drivers/acpi/cppc_acpi.c:1090:9 shift exponent 32 is too large for 32-bit type 'int' CPU: 61 UID: 0 PID: 1220 Comm: (udev-worker) Not tainted 7.0.10-201.fc44.aarch64 #1 PREEMPT(lazy) Hardware name: To be filled by O.E.M. Call trace: …(trimming) ubsan_epilogue+0x10/0x48 __ubsan_handle_shift_out_of_bounds+0xdc/0x1e0 cpc_write+0x4d0/0x670 cppc_set_perf+0x18c/0x490 cppc_cpufreq_cpu_init+0x1c8/0x380 [cppc_cpufreq] … (trimming)
Lets fix this by validating the region type, as well as whether access_width has a value. Then since we are returning bit_width directly for ACPI_ADR_SPACE_PLATFORM_COMM, drop the code correcting the size.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 4949affd5288b867cdf115f5b08d6166b2027f87 < b54c4632946ae42f2b39ed38abd909bbf78cbcc2 | affected |
| Linux | Linux | 01fc53be672acae37e611c80cc0b4f3939584de3 < e904596ba6dd108534ffa15e3e46b2fe245145e2 | affected |
| Linux | Linux | 1b890ae474d19800a6be1696df7fb4d9a41676e4 < 2fb80e962029000959f651665baa4838cc92eb99 | affected |
| Linux | Linux | 2f4a4d63a193be6fd530d180bb13c3592052904c < 37f28bf8f14672dfa395994e41fd778a63f0bf5c | affected |
| Linux | Linux | 2f4a4d63a193be6fd530d180bb13c3592052904c < f29dc6132d4968e39d8fa575d1a12e2c718ce57b | affected |
| Linux | Linux | 2f4a4d63a193be6fd530d180bb13c3592052904c < dc066bd13c860bb27d6ace511210e18b8064c1d9 | affected |
| Linux | Linux | 2f4a4d63a193be6fd530d180bb13c3592052904c < 1b1acf2dada0cc3931bb2cb9ff8832edfbee46a1 | affected |
| Linux | Linux | 6cb6b12b78dcd8867a3fdbb1b6d0ed1df2b208d1 | affected |
| Linux | Linux | 5.15.154 < 5.15.155 | affected |
| Linux | Linux | 6.1.90 < 6.1.178 | affected |
| Linux | Linux | 6.6.30 < 6.6.145 | affected |
| Linux | Linux | 6.8.9 < 6.9 | affected |
| Linux | Linux | 6.9 | affected |
| Linux | Linux | 0 < 6.9 | unaffected |
| Linux | Linux | 5.15.155 <= 5.15.* | unaffected |
| Linux | Linux | 6.1.178 <= 6.1.* | unaffected |
| Linux | Linux | 6.6.145 <= 6.6.* | unaffected |
| Linux | Linux | 6.12.96 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.39 <= 6.18.* | unaffected |
| Linux | Linux | 7.1.4 <= 7.1.* | unaffected |
| Linux | Linux | 7.2-rc1 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/b54c4632946ae42f2b39ed38abd909bbf78cbcc2
- https://git.kernel.org/stable/c/e904596ba6dd108534ffa15e3e46b2fe245145e2
- https://git.kernel.org/stable/c/2fb80e962029000959f651665baa4838cc92eb99
- https://git.kernel.org/stable/c/37f28bf8f14672dfa395994e41fd778a63f0bf5c
- https://git.kernel.org/stable/c/f29dc6132d4968e39d8fa575d1a12e2c718ce57b
- https://git.kernel.org/stable/c/dc066bd13c860bb27d6ace511210e18b8064c1d9
- https://git.kernel.org/stable/c/1b1acf2dada0cc3931bb2cb9ff8832edfbee46a1
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.