diff --git a/src/system/kernel/arch/x86/pic.cpp b/src/system/kernel/arch/x86/pic.cpp index 2f6c43f161..2f5916b671 100644 --- a/src/system/kernel/arch/x86/pic.cpp +++ b/src/system/kernel/arch/x86/pic.cpp @@ -237,7 +237,7 @@ pic_init() void pic_disable(uint16& enabledInterrupts) { - enabledInterrupts = in8(PIC_MASTER_MASK) | in8(PIC_SLAVE_MASK) << 8; + enabledInterrupts = ~(in8(PIC_MASTER_MASK) | in8(PIC_SLAVE_MASK) << 8); enabledInterrupts &= 0xfffb; // remove slave PIC from the mask // Mask off all interrupts on master and slave