mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 11:48:10 +00:00
Interrupts: Assert if trying to install an handler on syscall vector
Installing an interrupt handler on the syscall IDT vector can lead to fatal results, so we must assert if that happens.
This commit is contained in:
parent
f86be46c98
commit
dbc536e917
3 changed files with 6 additions and 1 deletions
|
@ -34,6 +34,7 @@
|
|||
#include <Kernel/Interrupts/PIC.h>
|
||||
#include <Kernel/Interrupts/SpuriousInterruptHandler.h>
|
||||
#include <Kernel/Interrupts/UnhandledInterruptHandler.h>
|
||||
#include <Kernel/Syscall.h>
|
||||
#include <Kernel/VM/MemoryManager.h>
|
||||
#include <LibBareMetal/IO.h>
|
||||
|
||||
|
@ -99,6 +100,8 @@ u8 InterruptManagement::acquire_irq_number(u8 mapped_interrupt_vector)
|
|||
u8 InterruptManagement::get_mapped_interrupt_vector(u8 original_irq)
|
||||
{
|
||||
// FIXME: For SMP configuration (with IOAPICs) use a better routing scheme to make redirections more efficient.
|
||||
// FIXME: Find a better way to handle conflict with Syscall interrupt gate.
|
||||
ASSERT((original_irq + IRQ_VECTOR_BASE) != syscall_vector);
|
||||
return original_irq;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue