aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/cdns3/cdns3-plat.c
diff options
context:
space:
mode:
authorRafael J. Wysocki <[email protected]>2021-03-19 14:47:31 +0000
committerRafael J. Wysocki <[email protected]>2021-03-22 14:21:38 +0000
commit5244f5e2d801259af877ee759e8c22364c607072 (patch)
tree4377ad10363aa3375701a3f373ecf41512e38476 /drivers/usb/cdns3/cdns3-plat.c
parentLinux 5.12-rc4 (diff)
downloadkernel-5244f5e2d801259af877ee759e8c22364c607072.tar.gz
kernel-5244f5e2d801259af877ee759e8c22364c607072.zip
PM: runtime: Defer suspending suppliers
Because the PM-runtime status of the device is not updated in __rpm_callback(), attempts to suspend the suppliers of the given device triggered by the rpm_put_suppliers() call in there may cause a supplier to be suspended completely before the status of the consumer is updated to RPM_SUSPENDED, which is confusing. To avoid that (1) modify __rpm_callback() to only decrease the PM-runtime usage counter of each supplier and (2) make rpm_suspend() try to suspend the suppliers after changing the consumer's status to RPM_SUSPENDED, in analogy with the device's parent. Link: https://lore.kernel.org/linux-pm/CAPDyKFqm06KDw_p8WXsM4dijDbho4bb6T4k50UqqvR1_COsp8g@mail.gmail.com/ Fixes: 21d5c57b3726 ("PM / runtime: Use device links") Reported-by: elaine.zhang <[email protected]> Diagnosed-by: Ulf Hansson <[email protected]> Reviewed-by: Ulf Hansson <[email protected]> Signed-off-by: Rafael J. Wysocki <[email protected]>
Diffstat (limited to 'drivers/usb/cdns3/cdns3-plat.c')
0 files changed, 0 insertions, 0 deletions