From 6d51de482c740d2cc722ea6a39f0c29c6a6fb64e Mon Sep 17 00:00:00 2001 From: Fredrik Holmqvist Date: Sun, 15 Jul 2012 14:34:43 +0200 Subject: [PATCH] Disabling interrupts before entering sleepstates. This didn't work properly before but seems to work fine now. Also added a panic for now, to find out if it is an issue atm. --- src/add-ons/kernel/bus_managers/acpi/BusManager.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/add-ons/kernel/bus_managers/acpi/BusManager.cpp b/src/add-ons/kernel/bus_managers/acpi/BusManager.cpp index cab2bc40e3..0f2317dc21 100644 --- a/src/add-ons/kernel/bus_managers/acpi/BusManager.cpp +++ b/src/add-ons/kernel/bus_managers/acpi/BusManager.cpp @@ -678,7 +678,10 @@ enter_sleep_state(uint8 state, uint8 flags) TRACE("enter_sleep_state %d with flags %d\n", state, flags); + cpu_status cpu = disable_interrupts(); status = AcpiEnterSleepState(state, flags); + restore_interrupts(cpu); + panic("AcpiEnterSleepState should not return."); if (status != AE_OK) return B_ERROR;