diff --git a/drivers/base/power/main.c b/drivers/base/power/main.c index 8a5258339ca2c45d6d097d4a14ab1cfd721694b2..fb4ca2870081b46b1a97240b21cab801809ed246 100644 --- a/drivers/base/power/main.c +++ b/drivers/base/power/main.c @@ -877,6 +877,11 @@ static int __device_suspend(struct device *dev, pm_message_t state, bool async) if (async_error) goto End; + if (pm_wakeup_pending()) { + async_error = -EBUSY; + goto End; + } + if (dev->class) { if (dev->class->pm) { pm_dev_dbg(dev, state, "class ");