diff options
Diffstat (limited to 'Kernel/Arch/i386/CPU.cpp')
-rw-r--r-- | Kernel/Arch/i386/CPU.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/Kernel/Arch/i386/CPU.cpp b/Kernel/Arch/i386/CPU.cpp index cf4d2259ab..69e4b1db53 100644 --- a/Kernel/Arch/i386/CPU.cpp +++ b/Kernel/Arch/i386/CPU.cpp @@ -39,6 +39,7 @@ #include <Kernel/KSyms.h> #include <Kernel/Process.h> #include <Kernel/VM/MemoryManager.h> +#include <LibBareMetal/IO.h> #include <LibC/mallocdefs.h> //#define PAGE_FAULT_DEBUG @@ -833,3 +834,13 @@ void __assertion_failed(const char* msg, const char* file, unsigned line, const ; } #endif + +NonMaskableInterruptDisabler::NonMaskableInterruptDisabler() +{ + IO::out8(0x70, IO::in8(0x70) | 0x80); +} + +NonMaskableInterruptDisabler::~NonMaskableInterruptDisabler() +{ + IO::out8(0x70, IO::in8(0x70) & 0x7F); +} |