diff --git a/src/sleep/sleep.c b/src/sleep/sleep.c index de1f6c7ec1..76b69f817a 100644 --- a/src/sleep/sleep.c +++ b/src/sleep/sleep.c @@ -270,8 +270,12 @@ static int execute( return r; r = write_kernel_hibernate_location(hibernate_location); - if (r < 0) + if (r < 0) { + if (is_efi_boot()) + (void) efi_set_variable(EFI_SYSTEMD_VARIABLE(HibernateLocation), NULL, 0); + return log_error_errno(r, "Failed to prepare for hibernation: %m"); + } } r = write_mode(modes);