[PATCH 2/2] [SRU][impish] ACPI: PM: Do not turn off power resources in unknown state
Heitor Alves de Siqueira
halves at canonical.com
Wed Apr 13 16:50:17 UTC 2022
From: "Rafael J. Wysocki" <rafael.j.wysocki at intel.com>
BugLink: https://bugs.launchpad.net/bugs/1942624
Commit 6381195ad7d0 ("ACPI: power: Rework turning off unused power
resources") caused power resources in unknown state with reference
counters equal to zero to be turned off too, but that caused issues
to appear in the field, so modify the code to only turn off power
resources that are known to be "on".
Link: https://lore.kernel.org/linux-acpi/6faf4b92-78d5-47a4-63df-cc2bab7769d0@molgen.mpg.de/
Fixes: 6381195ad7d0 ("ACPI: power: Rework turning off unused power resources")
Reported-by: Andreas K. Huettel <andreas.huettel at ur.de>
Tested-by: Andreas K. Huettel <andreas.huettel at ur.de>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki at intel.com>
Cc: 5.14+ <stable at vger.kernel.org> # 5.14+
(backported from commit bc28368596436e6e81ffc48c815b8225d96121c0)
Signed-off-by: Heitor Alves de Siqueira <halves at canonical.com>
---
drivers/acpi/power.c | 7 +------
1 file changed, 1 insertion(+), 6 deletions(-)
diff --git a/drivers/acpi/power.c b/drivers/acpi/power.c
index 0632a224e0a2..8e045dcaed8d 100644
--- a/drivers/acpi/power.c
+++ b/drivers/acpi/power.c
@@ -1019,13 +1019,8 @@ void acpi_turn_off_unused_power_resources(void)
continue;
}
- /*
- * Turn off power resources in an unknown state too, because the
- * platform firmware on some system expects the OS to turn off
- * power resources without any users unconditionally.
- */
if (!resource->ref_count &&
- state != ACPI_POWER_RESOURCE_STATE_OFF) {
+ state == ACPI_POWER_RESOURCE_STATE_ON) {
dev_info(&resource->device.dev, "Turning OFF\n");
__acpi_power_off(resource);
}
--
2.35.1
More information about the kernel-team
mailing list