diff --git a/Kernel/Interrupts/IOAPIC.cpp b/Kernel/Interrupts/IOAPIC.cpp index 0bf77069e7..3d26f42a21 100644 --- a/Kernel/Interrupts/IOAPIC.cpp +++ b/Kernel/Interrupts/IOAPIC.cpp @@ -245,6 +245,7 @@ int IOAPIC::find_redirection_entry_by_vector(u8 vector) const void IOAPIC::disable(u8 interrupt_vector) { InterruptDisabler disabler; + ASSERT(!is_hard_disabled()); int index = find_redirection_entry_by_vector(interrupt_vector); if (index == (-1)) { map_interrupt_redirection(interrupt_vector); @@ -257,6 +258,7 @@ void IOAPIC::disable(u8 interrupt_vector) void IOAPIC::enable(u8 interrupt_vector) { InterruptDisabler disabler; + ASSERT(!is_hard_disabled()); int index = find_redirection_entry_by_vector(interrupt_vector); if (index == (-1)) { map_interrupt_redirection(interrupt_vector); @@ -269,6 +271,7 @@ void IOAPIC::enable(u8 interrupt_vector) void IOAPIC::eoi(u8) const { InterruptDisabler disabler; + ASSERT(!is_hard_disabled()); APIC::eoi(); } diff --git a/Kernel/Interrupts/PIC.cpp b/Kernel/Interrupts/PIC.cpp index 33fbbea7e3..5c92a64b94 100644 --- a/Kernel/Interrupts/PIC.cpp +++ b/Kernel/Interrupts/PIC.cpp @@ -61,8 +61,7 @@ bool inline static is_all_masked(u8 reg) void PIC::disable(u8 irq) { InterruptDisabler disabler; - if (is_hard_disabled()) - return; + ASSERT(!is_hard_disabled()); u8 imr; if (irq >= 8) { imr = IO::in8(PIC1_CMD); @@ -99,8 +98,7 @@ bool PIC::is_vector_enabled(u8 irq) const void PIC::enable(u8 irq) { InterruptDisabler disabler; - if (is_hard_disabled()) - return; + ASSERT(!is_hard_disabled()); u8 imr; if (irq >= 8) { imr = IO::in8(PIC1_CMD); @@ -117,8 +115,7 @@ void PIC::enable(u8 irq) void PIC::eoi(u8 irq) const { InterruptDisabler disabler; - if (is_hard_disabled()) - return; + ASSERT(!is_hard_disabled()); if (irq >= 8) IO::out8(PIC1_CTL, 0x20); IO::out8(PIC0_CTL, 0x20);