summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/base/power/runtime.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/base/power/runtime.c b/drivers/base/power/runtime.c
index 3f141ea9283d..37489733cb9d 100644
--- a/drivers/base/power/runtime.c
+++ b/drivers/base/power/runtime.c
@@ -406,8 +406,10 @@ static int rpm_suspend(struct device *dev, int rpmflags)
* reschedule another autosuspend.
*/
if ((rpmflags & RPM_AUTO) &&
- pm_runtime_autosuspend_expiration(dev) != 0)
+ pm_runtime_autosuspend_expiration(dev) != 0) {
+ wake_up_all(&dev->power.wait_queue);
goto repeat;
+ }
} else {
pm_runtime_cancel_pending(dev);
}