Commit 8a0bb736 authored by Rafael J. Wysocki's avatar Rafael J. Wysocki Committed by Len Brown

Hibernation: Make sure that ACPI is enabled in acpi_hibernation_finish

If the BIOS does not enable ACPI and the "acpi=off" command line parameter
is passed to the boot kernel, ACPI may be disabled when the (restored)
image kernel attempts to execute acpi_hibernation_finish().  To prevent
this from happening we can call acpi_enable() from
acpi_hibernation_finish() (if ACPI is already enabled, this will have no
effect).
Signed-off-by: default avatarRafael J. Wysocki <rjw@sisk.pl>
Acked-by: default avatarPavel Machek <pavel@ucw.cz>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLen Brown <len.brown@intel.com>
parent bbf25010
...@@ -256,6 +256,11 @@ static int acpi_hibernation_enter(void) ...@@ -256,6 +256,11 @@ static int acpi_hibernation_enter(void)
static void acpi_hibernation_finish(void) static void acpi_hibernation_finish(void)
{ {
/*
* If ACPI is not enabled by the BIOS and the boot kernel, we need to
* enable it here.
*/
acpi_enable();
acpi_leave_sleep_state(ACPI_STATE_S4); acpi_leave_sleep_state(ACPI_STATE_S4);
acpi_disable_wakeup_device(ACPI_STATE_S4); acpi_disable_wakeup_device(ACPI_STATE_S4);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment