linux/drivers/acpi
Pengjie Zhang b5e70e7fa9 ACPI: CPPC: Fix missing PCC check for guaranteed_perf
commit 6ea3a44cef upstream.

The current implementation overlooks the 'guaranteed_perf'
register in this check.

If the Guaranteed Performance register is located in the PCC
subspace, the function currently attempts to read it without
acquiring the lock and without sending the CMD_READ doorbell
to the firmware. This can result in reading stale data.

Fixes: 29523f0953 ("ACPI / CPPC: Add support for guaranteed performance")
Signed-off-by: Pengjie Zhang <zhangpengjie2@huawei.com>
Cc: 4.20+ <stable@vger.kernel.org> # 4.20+
[ rjw: Subject and changelog edits ]
Link: https://patch.msgid.link/20251210132227.1988380-1-zhangpengjie2@huawei.com
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2026-01-19 13:09:45 +01:00
..
acpica ACPICA: Avoid walking the Namespace if start_node is NULL 2026-01-19 13:09:41 +01:00
apei efi/cper: align ARM CPER type with UEFI 2.9A/2.10 specs 2026-01-19 13:09:40 +01:00
arm64 acpi/arm64: Adjust error handling procedure in gtdt_parse_timer_block() 2024-12-14 19:50:43 +01:00
dptf ACPI: DPTF: Add new PCH FIVR methods 2021-08-04 18:08:50 +02:00
nfit ACPI: NFIT: Fix incorrect ndr_desc being reportedin dev_err message 2025-10-19 16:21:34 +02:00
numa acpi,srat: Fix incorrect device handle check for Generic Initiator 2025-12-07 06:09:28 +09:00
pmic ACPI: PMIC: Remove unneeded check in tps68470_pmic_opregion_probe() 2024-10-17 15:10:43 +02:00
x86 ACPI: x86: Force StorageD3Enable on more products 2024-07-05 09:14:39 +02:00
ac.c ACPI: AC: Quirk GK45 to skip reading _PSR 2021-11-18 19:16:19 +01:00
acpi_adxl.c ACPI/ADXL: Add address translation interface using an ACPI DSM 2018-10-16 10:03:00 +02:00
acpi_amba.c ACPI: AMBA: Fix resource name in /proc/iomem 2021-06-30 20:01:10 +02:00
acpi_apd.c serial: 8250_dw: Add device HID for new AMD UART controller 2021-05-13 17:08:42 +02:00
acpi_cmos_rtc.c ACPI: cmos_rtc: Using pr_fmt() and remove PREFIX 2021-06-07 15:36:45 +02:00
acpi_configfs.c ACPI: configfs: Make get_header() to return error pointer 2021-07-16 19:20:28 +02:00
acpi_dbg.c ACPI: debug: fix signedness issues in read/write helpers 2025-10-19 16:21:43 +02:00
acpi_extlog.c ACPI: extlog: fix NULL pointer dereference check 2024-02-23 08:54:38 +01:00
acpi_fpdt.c ACPI: FPDT: properly handle invalid FPDT subtables 2023-11-28 16:56:29 +00:00
acpi_ipmi.c ACPI: ipmi: Remove address space handler in error path 2021-05-24 16:27:34 +02:00
acpi_lpat.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
acpi_lpit.c ACPI: LPIT: Avoid u32 multiplication overflow 2024-01-25 14:52:33 -08:00
acpi_lpss.c ACPI: LPSS: Fix the fractional clock divider flags 2024-01-25 14:52:34 -08:00
acpi_memhotplug.c ACPI: memhotplug: use a single static memory group for a single memory device 2021-09-08 11:50:23 -07:00
acpi_pad.c ACPI: PAD: fix crash in exit_round_robin() 2024-10-17 15:11:24 +02:00
acpi_platform.c ACPI: platform: Remove ACPI_MODULE_NAME() 2020-09-25 18:25:51 +02:00
acpi_pnp.c ACPI: PNP: compare the string length in the matching_id() 2020-12-15 19:30:49 +01:00
acpi_processor.c ACPI: processor: fix acpi_object initialization 2025-08-28 16:24:18 +02:00
acpi_tad.c ACPI: TAD: Add missing sysfs_remove_group() for ACPI_TAD_RT 2025-10-19 16:21:43 +02:00
acpi_video.c ACPI: video: Fix use-after-free in acpi_video_switch_brightness() 2025-12-07 06:09:13 +09:00
acpi_watchdog.c ACPI: watchdog: Replace open coded variant of resource_union() 2020-11-17 18:06:29 +01:00
battery.c Revert "ACPI: battery: negate current when discharging" 2025-07-17 18:30:50 +02:00
bgrt.c ACPI: bgrt: Use sysfs_emit 2021-06-23 19:27:50 +02:00
blacklist.c ACPI: blacklist: Unify the message printing 2021-06-07 15:36:45 +02:00
bus.c ACPI: bus: Bail out if acpi_kobj registration fails 2025-06-27 11:05:28 +01:00
button.c ACPI: button: Add DMI quirk for Samsung Galaxy Book2 to fix initial lid detection issue 2024-11-01 01:52:37 +01:00
container.c ACPI: container: Remove leftover ACPICA debug functionality 2020-09-25 18:25:51 +02:00
cppc_acpi.c ACPI: CPPC: Fix missing PCC check for guaranteed_perf 2026-01-19 13:09:45 +01:00
custom_method.c ACPI: custom_method: fix a possible memory leak 2021-04-28 19:17:54 +02:00
debugfs.c ACPI: debugfs: Remove dead ACPICA debug code 2020-09-25 18:25:51 +02:00
device_pm.c for-5.14/drivers-2021-06-29 2021-06-30 12:21:16 -07:00
device_sysfs.c ACPI: sysfs: validate return type of _STR method 2024-10-17 15:11:13 +02:00
dock.c ACPI: dock: fix some coding style issues 2021-04-08 16:27:03 +02:00
ec.c ACPI: EC: Do not release locks during operation region accesses 2024-10-17 15:11:25 +02:00
ec_sys.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 482 2019-06-19 17:09:52 +02:00
event.c Merge branches 'acpi-ec', 'acpi-apei', 'acpi-soc' and 'acpi-misc' 2021-06-29 15:51:25 +02:00
evged.c ACPI: GED: fix -Wformat 2020-11-09 19:25:20 +01:00
fan.c ACPI: fan: cleanup resources in the error path of .probe() 2025-03-13 12:49:56 +01:00
fan.h ACPI: PM / fan: Put fan device IDs into separate header file 2021-05-21 19:02:35 +02:00
glue.c Revert "ACPI: scan: Release PM resources blocked by unused objects" 2021-11-21 13:44:14 +01:00
hed.c ACPI: HED: Always initialize before evged 2025-06-04 14:38:01 +02:00
internal.h ACPI: EC: Rework flushing of EC work while suspended to idle 2022-01-27 11:03:23 +01:00
ioapic.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
irq.c ACPI: irq: Fix incorrect return value in acpi_register_gsi() 2023-10-25 11:59:02 +02:00
Kconfig ACPI: HED: Always initialize before evged 2025-06-04 14:38:01 +02:00
Makefile IOMMU Updates for Linux v5.14 2021-07-02 13:22:47 -07:00
nvs.c Merge branches 'acpi-ec', 'acpi-apei', 'acpi-soc' and 'acpi-misc' 2021-06-29 15:51:25 +02:00
osi.c ACPI: OSI: Stop advertising support for "3.0 _SCP Extensions" 2025-06-27 11:05:10 +01:00
osl.c Revert "ACPI: Add memory semantics to acpi_os_map_memory()" 2021-09-23 20:39:36 +02:00
pci_irq.c ACPI: PCI: IRQ: Consolidate printing diagnostic messages 2021-03-08 16:51:08 +01:00
pci_link.c ACPI: utils: Introduce acpi_evaluation_failure_warn() 2021-03-08 19:10:30 +01:00
pci_mcfg.c PCI/ACPI: Guard ARM64-specific mcfg_quirks 2022-08-25 11:40:36 +02:00
pci_root.c ACPI: APEI: explicit init of HEST and GHES in apci_init() 2022-08-17 14:23:11 +02:00
pci_slot.c ACPI: PCI: Remove unused ACPICA debug code 2020-09-25 18:25:51 +02:00
platform_profile.c ACPI: platform-profile: Fix CFI violation when accessing sysfs files 2025-05-02 07:44:06 +02:00
power.c ACPI: PM: Fix device wakeup power reference counting error 2021-11-18 19:17:09 +01:00
pptt.c ACPI: PPTT: Fix processor subtable walk 2025-05-22 14:08:25 +02:00
prmt.c ACPI: PRM: Skip handlers with NULL handler_address or NULL VA 2025-12-07 06:09:16 +09:00
proc.c ACPI: proc: Remove dead ACPICA debug code 2020-09-25 18:25:51 +02:00
processor_core.c ACPI: processor_core: fix map_x2apic_id for amd-pstate on am4 2026-01-19 13:09:34 +01:00
processor_driver.c ACPI: processor: Get rid of ACPICA message printing 2021-03-08 16:51:19 +01:00
processor_idle.c ACPI: processor: idle: Fix memory leak when register cpuidle device failed 2025-10-19 16:21:29 +02:00
processor_pdc.c ACPI: processor: Fix evaluating _PDC method when running as Xen dom0 2023-05-11 23:00:22 +09:00
processor_perflib.c ACPI: processor: perflib: Move problematic pr->performance check 2025-08-28 16:24:15 +02:00
processor_thermal.c ACPI: processor: Remove freq Qos request for all CPUs 2022-08-31 17:16:48 +02:00
processor_throttling.c Merge branches 'acpi-dptf' and 'acpi-messages' 2021-06-29 15:50:37 +02:00
property.c ACPI: property: Use ACPI functions in acpi_graph_get_next_endpoint() only 2026-01-19 13:09:41 +01:00
reboot.c ACPI: reboot: Unify the message printing 2021-06-07 15:36:46 +02:00
resource.c ACPI: resource: Skip IRQ override on ASUS Vivobook 14 X1404VAP 2025-04-10 14:32:06 +02:00
sbs.c ACPI: SBS: manage alarm sysfs attribute through psy core 2024-08-19 05:45:37 +02:00
sbshc.c Merge branches 'acpi-ec', 'acpi-apei', 'acpi-soc' and 'acpi-misc' 2021-06-29 15:51:25 +02:00
sbshc.h ACPI: Fix whitespace inconsistencies 2020-11-09 19:08:06 +01:00
scan.c ACPI: scan: Add Intel CVS ACPI HIDs to acpi_ignore_dep_ids[] 2025-12-07 06:09:16 +09:00
sleep.c Revert "ACPI: PM: Block ASUS B1400CEAE from suspend to idle by default" 2024-04-13 13:01:45 +02:00
sleep.h Revert "Revert "ACPI: scan: Turn off unused power resources during initialization"" 2021-05-10 14:02:17 +02:00
spcr.c ACPI: SPCR: Add support for the new 16550-compatible Serial Port Subtype 2021-08-16 18:38:08 +02:00
sysfs.c ACPI: sysfs: Fix BERT error region memory mapping 2022-05-30 09:28:58 +02:00
tables.c memblock: exclude MEMBLOCK_NOMAP regions from kmemleak 2021-10-21 18:30:49 -10:00
thermal.c ACPI: thermal: Drop nocrt parameter 2023-09-02 09:17:07 +02:00
tiny-power-button.c ACPI: tiny-power-button: Simplify the code using module_acpi_driver() 2020-11-17 18:12:34 +01:00
utils.c ACPI: utils: Fix reference counting in for_each_acpi_dev_match() 2021-07-19 16:22:01 +02:00
video_detect.c ACPI: video: force native for Lenovo 82K8 2025-12-07 06:09:16 +09:00
viot.c ACPI: VIOT: Initialize the correct IOMMU fwspec 2023-05-11 23:00:23 +09:00
wakeup.c ACPI: Fix whitespace inconsistencies 2020-11-09 19:08:06 +01:00