sleep: when we can't hibernate on suspend-then-hibernate, fall back to suspend again

Let's make this a bit safer, and try hard to return to sleep, if we can
at all.

Fixes: #10212
This commit is contained in:
Lennart Poettering 2018-10-24 13:15:24 +02:00
parent 14250f0942
commit f05e1ae666
1 changed files with 11 additions and 1 deletions

View File

@ -263,7 +263,17 @@ static int execute_s2h(usec_t hibernate_delay_sec) {
return 0;
/* If woken up after alarm time, hibernate */
return execute(hibernate_modes, hibernate_states);
r = execute(hibernate_modes, hibernate_states);
if (r < 0) {
log_notice("Couldn't hibernate, will try to suspend again.");
r = execute(suspend_modes, suspend_states);
if (r < 0) {
log_notice("Could neither hibernate nor suspend again, giving up.");
return r;
}
}
return 0;
}
static int help(void) {