From de0b8cd37a8ac229df356f1f80380b58801bf1b4 Mon Sep 17 00:00:00 2001 From: notsomeidiot123 Date: Sat, 4 Jul 2026 01:20:24 -0400 Subject: [PATCH] Prevent pre-emption during install_irq_handler --- src/kernel/arch_i386/interrupts.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/kernel/arch_i386/interrupts.c b/src/kernel/arch_i386/interrupts.c index aa45e88..41abe50 100644 --- a/src/kernel/arch_i386/interrupts.c +++ b/src/kernel/arch_i386/interrupts.c @@ -126,8 +126,10 @@ void kernel_panic(char *message, cpu_registers_t *regs){ } void install_irq_handler(void (*handler)(), uint8_t irqno){ + asm("cli"); interrupt_handlers[irqno] = handler; // printf("called\n"); + asm("sti"); } void *get_irq_handler(uint8_t irqno){ return interrupt_handlers[irqno];