WSL2-Linux-Kernel/drivers/acpi
Ville Syrjälä f3106b0b01 ACPI: processor: idle: Avoid falling back to C3 type C-states
commit fc45e55ebc upstream.

The "safe state" index is used by acpi_idle_enter_bm() to avoid
entering a C-state that may require bus mastering to be disabled
on entry in the cases when this is not going to happen.  For this
reason, it should not be set to point to C3 type of C-states, because
they may require bus mastering to be disabled on entry in principle.

This was broken by commit d6b88ce2eb ("ACPI: processor idle: Allow
playing dead in C3 state") which inadvertently allowed the "safe
state" index to point to C3 type of C-states.

This results in a machine that won't boot past the point when it first
enters C3. Restore the correct behaviour (either demote to C1/C2, or
use C3 but also set ARB_DIS=1).

I hit this on a Fujitsu Siemens Lifebook S6010 (P3) machine.

Fixes: d6b88ce2eb ("ACPI: processor idle: Allow playing dead in C3 state")
Cc: 5.16+ <stable@vger.kernel.org> # 5.16+
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Tested-by: Woody Suwalski <wsuwalski@gmail.com>
[ rjw: Subject and changelog adjustments ]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-05-09 09:14:41 +02:00
..
acpica ACPICA: Avoid walking the ACPI Namespace if it is not there 2022-04-08 14:23:56 +02:00
apei ACPI/APEI: Limit printable size of BERT table data 2022-04-08 14:23:56 +02:00
arm64 ACPI/IORT: Check node revision for PMCG resources 2022-02-16 12:56:19 +01:00
dptf
nfit
numa
pmic ACPI: PMIC: Fix intel_pmic_regs_handler() read accesses 2021-11-18 19:17:06 +01:00
x86 ACPI: PM: Revert "Only mark EC GPE for wakeup on Intel systems" 2022-02-23 12:03:18 +01:00
Kconfig
Makefile
ac.c ACPI: AC: Quirk GK45 to skip reading _PSR 2021-11-18 19:16:19 +01:00
acpi_adxl.c
acpi_amba.c
acpi_apd.c
acpi_cmos_rtc.c
acpi_configfs.c
acpi_dbg.c
acpi_extlog.c
acpi_fpdt.c
acpi_ipmi.c
acpi_lpat.c
acpi_lpit.c
acpi_lpss.c
acpi_memhotplug.c
acpi_pad.c
acpi_platform.c
acpi_pnp.c
acpi_processor.c
acpi_tad.c
acpi_video.c
acpi_watchdog.c
battery.c ACPI: battery: Add device HID and quirk for Microsoft Surface Go 3 2022-03-28 09:58:44 +02:00
bgrt.c
blacklist.c
bus.c Revert "ACPI: Pass the same capabilities to the _OSC regardless of the query flag" 2022-04-08 14:22:58 +02:00
button.c
container.c
cppc_acpi.c ACPI: CPPC: Avoid out of bounds access when parsing _CPC data 2022-04-08 14:24:12 +02:00
custom_method.c
debugfs.c
device_pm.c
device_sysfs.c
dock.c
ec.c Revert "ACPI: PM: s2idle: Cancel wakeup before dispatching EC GPE" 2022-03-11 12:22:37 +01:00
ec_sys.c
event.c
evged.c
fan.c
fan.h
glue.c Revert "ACPI: scan: Release PM resources blocked by unused objects" 2021-11-21 13:44:14 +01:00
hed.c
internal.h ACPI: EC: Rework flushing of EC work while suspended to idle 2022-01-27 11:03:23 +01:00
ioapic.c
irq.c
nvs.c
osi.c
osl.c
pci_irq.c
pci_link.c
pci_mcfg.c
pci_root.c
pci_slot.c
platform_profile.c
power.c ACPI: PM: Fix device wakeup power reference counting error 2021-11-18 19:17:09 +01:00
pptt.c
prmt.c
proc.c
processor_core.c
processor_driver.c
processor_idle.c ACPI: processor: idle: Avoid falling back to C3 type C-states 2022-05-09 09:14:41 +02:00
processor_pdc.c
processor_perflib.c
processor_thermal.c
processor_throttling.c
property.c ACPI: properties: Consistently return -ENOENT if there are no more references 2022-04-08 14:22:58 +02:00
reboot.c
resource.c ACPI: resources: Add one more Medion model in IRQ override quirk 2021-11-18 19:16:20 +01:00
sbs.c
sbshc.c
sbshc.h
scan.c ACPI: scan: Create platform device for BCM4752 and LNV4752 ACPI nodes 2022-01-27 11:03:48 +01:00
sleep.c Revert "ACPI: PM: s2idle: Cancel wakeup before dispatching EC GPE" 2022-03-11 12:22:37 +01:00
sleep.h
spcr.c
sysfs.c
tables.c memblock: exclude MEMBLOCK_NOMAP regions from kmemleak 2021-10-21 18:30:49 -10:00
thermal.c
tiny-power-button.c
utils.c
video_detect.c ACPI: video: Force backlight native for Clevo NL5xRU and NL5xNU 2022-03-28 09:58:45 +02:00
viot.c
wakeup.c