* When you pressed ctrl-alt-del during the boot process, interrupts are disabled
when you enter arch_cpu_shutdown(), so you must not try to load the ACPI module to reboot. DaaT, that should fix the problem you showed me. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33617 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
parent
25295d1ede
commit
e0d8627a73
|
@ -105,7 +105,7 @@ x86_optimized_functions gOptimizedFunctions = {
|
||||||
static status_t
|
static status_t
|
||||||
acpi_shutdown(bool rebootSystem)
|
acpi_shutdown(bool rebootSystem)
|
||||||
{
|
{
|
||||||
if (debug_debugger_running())
|
if (debug_debugger_running() || !are_interrupts_enabled())
|
||||||
return B_ERROR;
|
return B_ERROR;
|
||||||
|
|
||||||
acpi_module_info* acpi;
|
acpi_module_info* acpi;
|
||||||
|
@ -829,10 +829,10 @@ arch_cpu_shutdown(bool rebootSystem)
|
||||||
{
|
{
|
||||||
if (acpi_shutdown(rebootSystem) == B_OK)
|
if (acpi_shutdown(rebootSystem) == B_OK)
|
||||||
return B_OK;
|
return B_OK;
|
||||||
|
|
||||||
if (!rebootSystem)
|
if (!rebootSystem)
|
||||||
return apm_shutdown();
|
return apm_shutdown();
|
||||||
|
|
||||||
cpu_status state = disable_interrupts();
|
cpu_status state = disable_interrupts();
|
||||||
|
|
||||||
// try to reset the system using the keyboard controller
|
// try to reset the system using the keyboard controller
|
||||||
|
|
Loading…
Reference in New Issue