Make reboot and shutdown disable interrupts before proceeding

This is getting important now that I've made a Scheduler (yay!!) *will get added next commit*
This commit is contained in:
apio 2022-09-20 19:54:49 +02:00
parent 5ee8e17b76
commit 063b6345ee
2 changed files with 3 additions and 0 deletions

View File

@ -84,6 +84,7 @@ static void try_idt_triple_fault()
[[noreturn]] void reboot() [[noreturn]] void reboot()
{ {
Interrupts::disable();
kinfoln("Attempting reboot using ACPI"); kinfoln("Attempting reboot using ACPI");
try_acpi_reboot(); try_acpi_reboot();
kinfoln("Attempting reboot using keyboard RESET pulsing"); kinfoln("Attempting reboot using keyboard RESET pulsing");

View File

@ -1,12 +1,14 @@
#define MODULE "power" #define MODULE "power"
#include "power/shutdown.h" #include "power/shutdown.h"
#include "interrupts/Interrupts.h"
#include "io/IO.h" #include "io/IO.h"
#include "log/Log.h" #include "log/Log.h"
#include "panic/hang.h" #include "panic/hang.h"
[[noreturn]] void shutdown() [[noreturn]] void shutdown()
{ {
Interrupts::disable();
kinfoln("Attempting shutdown using the Bochs method"); kinfoln("Attempting shutdown using the Bochs method");
IO::outw(0xB004, 0x2000); IO::outw(0xB004, 0x2000);
kinfoln("Attempting shutdown using the QEMU method"); kinfoln("Attempting shutdown using the QEMU method");