|
@@ -889,6 +889,11 @@ static int dpm_suspend_noirq(pm_message_t state)
|
|
|
if (!list_empty(&dev->power.entry))
|
|
|
list_move(&dev->power.entry, &dpm_noirq_list);
|
|
|
put_device(dev);
|
|
|
+
|
|
|
+ if (pm_wakeup_pending()) {
|
|
|
+ error = -EBUSY;
|
|
|
+ break;
|
|
|
+ }
|
|
|
}
|
|
|
mutex_unlock(&dpm_list_mtx);
|
|
|
if (error)
|
|
@@ -962,6 +967,11 @@ static int dpm_suspend_late(pm_message_t state)
|
|
|
if (!list_empty(&dev->power.entry))
|
|
|
list_move(&dev->power.entry, &dpm_late_early_list);
|
|
|
put_device(dev);
|
|
|
+
|
|
|
+ if (pm_wakeup_pending()) {
|
|
|
+ error = -EBUSY;
|
|
|
+ break;
|
|
|
+ }
|
|
|
}
|
|
|
mutex_unlock(&dpm_list_mtx);
|
|
|
if (error)
|