diff --git a/kernel/src/power/reboot.cpp b/kernel/src/power/reboot.cpp index 9f0f1008..0bb914af 100644 --- a/kernel/src/power/reboot.cpp +++ b/kernel/src/power/reboot.cpp @@ -84,6 +84,7 @@ static void try_idt_triple_fault() [[noreturn]] void reboot() { + Interrupts::disable(); kinfoln("Attempting reboot using ACPI"); try_acpi_reboot(); kinfoln("Attempting reboot using keyboard RESET pulsing"); diff --git a/kernel/src/power/shutdown.cpp b/kernel/src/power/shutdown.cpp index 3d365dee..5921268b 100644 --- a/kernel/src/power/shutdown.cpp +++ b/kernel/src/power/shutdown.cpp @@ -1,12 +1,14 @@ #define MODULE "power" #include "power/shutdown.h" +#include "interrupts/Interrupts.h" #include "io/IO.h" #include "log/Log.h" #include "panic/hang.h" [[noreturn]] void shutdown() { + Interrupts::disable(); kinfoln("Attempting shutdown using the Bochs method"); IO::outw(0xB004, 0x2000); kinfoln("Attempting shutdown using the QEMU method");