The keyboard interrupt handler (keyboard_callback) not sending an End Of Interrupt (EOI) signal to the PIC.
Without EOI, the PIC will not send further keyboard interrupts after the first one, causing keyboard input to stop working.
This is critical for correct interrupt handling.
Current Behavior:
Keyboard may stop responding after first interrupt.
Suggested Fix:
Send EOI using:
outb(PIC1_COMMAND, PIC_EOI);
at all return paths in keyboard_callback().
The keyboard interrupt handler (keyboard_callback) not sending an End Of Interrupt (EOI) signal to the PIC.
Without EOI, the PIC will not send further keyboard interrupts after the first one, causing keyboard input to stop working.
This is critical for correct interrupt handling.
Current Behavior:
Keyboard may stop responding after first interrupt.
Suggested Fix:
Send EOI using:
outb(PIC1_COMMAND, PIC_EOI);
at all return paths in keyboard_callback().