PM: sleep: Restore asynchronous device resume optimization
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>
Tue, 9 Jan 2024 16:59:22 +0000 (17:59 +0100)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Wed, 10 Jan 2024 19:59:20 +0000 (20:59 +0100)
commit3e999770ac1c7c31a70685dd5b88e89473509e9c
tree8f04044a2cf05cd7f522045d9c1ef184c75667bc
parent7839d0078e0d5e6cc2fa0b0dfbee71de74f1e557
PM: sleep: Restore asynchronous device resume optimization

Before commit 7839d0078e0d ("PM: sleep: Fix possible deadlocks in core
system-wide PM code"), the resume of devices that were allowed to resume
asynchronously was scheduled before starting the resume of the other
devices, so the former did not have to wait for the latter unless
functional dependencies were present.

Commit 7839d0078e0d removed that optimization in order to address a
correctness issue, but it can be restored with the help of a new device
power management flag, so do that now.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Reviewed-by: Stanislaw Gruszka <stanislaw.gruszka@linux.intel.com>
drivers/base/power/main.c
include/linux/pm.h