On 7/3/25 10:29, Rafael J. Wysocki wrote:
On Mon, Jun 16, 2025 at 7:50 PM Mario Limonciello <supe...@kernel.org> wrote:
From: Mario Limonciello <mario.limoncie...@amd.com>
A variety of issues both in function and in power consumption have been
raised as a result of devices not being put into a low power state when
the system is powered off.
There have been some localized changes[1] to PCI core to help these issues,
but they have had various downsides.
This series instead tries to use the S4 flow when the system is being
powered off. This lines up the behavior with what other operating systems
do as well. If for some reason that fails or is not supported, unwind and
do the previous S5 flow that will wake all devices and run their shutdown()
callbacks.
I actually like this approach, but I think that it is risky.
Yeah; it does touch a lot of areas.
It also requires more work/review from other people.
I view patches 3-5 as being dependent upon patch 1, so until we have
agreement on that one the others might not make a lot of sense.
Bjorn,
Can you take a look at patch 2?
I'll be sending some comments on the individual patches going forward,
but I think the earliest it can go in is after 6.17-rc1 (given it is
reviewed properly till then).
Thanks!
Thanks!
v3->v4:
* Fix LKP robot failure
* Rebase on v6.16-rc2
Previous submissions [1]:
Link:
https://lore.kernel.org/linux-pm/CAJZ5v0hrKEJa8Ad7iiAvQ3d_0ysVhzZcXSYc5kkL=6vtsef...@mail.gmail.com/T/#m91e4eae868a7405ae579e89b135085f4906225d2
Link:
https://lore.kernel.org/linux-pci/20250506041934.1409302-1-supe...@kernel.org/
Link:
https://lore.kernel.org/linux-pci/20231213182656.6165-1-mario.limoncie...@amd.com/
(v1)
Link:
https://lore.kernel.org/linux-pm/20250514193406.3998101-1-supe...@kernel.org/
(v2)
Link:
https://lore.kernel.org/linux-pm/20250609024619.407257-1-supe...@kernel.org/
(v3)
Mario Limonciello (5):
PM: Use hibernate flows for system power off
PCI: Put PCIe ports with downstream devices into D3 at hibernate
drm/amd: Avoid evicting resources at S5
scsi: Add PM_EVENT_POWEROFF into suspend callbacks
usb: sl811-hcd: Add PM_EVENT_POWEROFF into suspend callbacks
drivers/base/power/main.c | 7 ++
drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 4 +
drivers/pci/pci-driver.c | 94 ++++++++++++++--------
drivers/scsi/mesh.c | 1 +
drivers/scsi/stex.c | 1 +
drivers/usb/host/sl811-hcd.c | 1 +
include/linux/pm.h | 3 +
include/trace/events/power.h | 3 +-
kernel/reboot.c | 6 ++
9 files changed, 86 insertions(+), 34 deletions(-)
--
2.43.0