diff options
-rw-r--r-- | drivers/base/power/main.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/drivers/base/power/main.c b/drivers/base/power/main.c index 61a891dda380..0113adc310dc 100644 --- a/drivers/base/power/main.c +++ b/drivers/base/power/main.c | |||
@@ -991,8 +991,16 @@ static int dpm_suspend_late(pm_message_t state) | |||
991 | int dpm_suspend_end(pm_message_t state) | 991 | int dpm_suspend_end(pm_message_t state) |
992 | { | 992 | { |
993 | int error = dpm_suspend_late(state); | 993 | int error = dpm_suspend_late(state); |
994 | if (error) | ||
995 | return error; | ||
994 | 996 | ||
995 | return error ? : dpm_suspend_noirq(state); | 997 | error = dpm_suspend_noirq(state); |
998 | if (error) { | ||
999 | dpm_resume_early(state); | ||
1000 | return error; | ||
1001 | } | ||
1002 | |||
1003 | return 0; | ||
996 | } | 1004 | } |
997 | EXPORT_SYMBOL_GPL(dpm_suspend_end); | 1005 | EXPORT_SYMBOL_GPL(dpm_suspend_end); |
998 | 1006 | ||