aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFredrik Holmqvist <fredrik.holmqvist@gmail.com>2012-07-15 14:34:43 +0200
committerFredrik Holmqvist <fredrik.holmqvist@gmail.com>2012-07-15 14:34:43 +0200
commit6d51de482c740d2cc722ea6a39f0c29c6a6fb64e (patch)
tree95101488545a1e3370259840aae41f963b460404
parentcad6c2c536aba66ada9eb1e65e1ba7bc62ff0feb (diff)
Disabling interrupts before entering sleepstates.hrev44340
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.
-rw-r--r--src/add-ons/kernel/bus_managers/acpi/BusManager.cpp3
1 files changed, 3 insertions, 0 deletions
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;