diff --git a/kernel/arch/x86_64/IDT.cpp b/kernel/arch/x86_64/IDT.cpp index 5b7187cd..c11ff2b8 100644 --- a/kernel/arch/x86_64/IDT.cpp +++ b/kernel/arch/x86_64/IDT.cpp @@ -356,7 +356,7 @@ done: extern "C" void syscall_asm(); - IDT* IDT::create(bool is_bsb) + IDT* IDT::create() { auto* idt = new IDT(); ASSERT(idt); @@ -367,12 +367,8 @@ done: ISR_LIST_X #undef X - // FIXME: distribute IRQs more evenly? #define X(num) idt->register_interrupt_handler(IRQ_VECTOR_BASE + num, irq ## num); - if (is_bsb) - { - IRQ_LIST_X - } + IRQ_LIST_X #undef X idt->register_syscall_handler(0x80, syscall_asm); diff --git a/kernel/include/kernel/IDT.h b/kernel/include/kernel/IDT.h index fc8c096c..0a79c8a8 100644 --- a/kernel/include/kernel/IDT.h +++ b/kernel/include/kernel/IDT.h @@ -34,7 +34,7 @@ namespace Kernel BAN_NON_MOVABLE(IDT); public: - static IDT* create(bool is_bsb); + static IDT* create(); [[noreturn]] static void force_triple_fault(); diff --git a/kernel/kernel/Processor.cpp b/kernel/kernel/Processor.cpp index f9ef0ff7..f7805f9f 100644 --- a/kernel/kernel/Processor.cpp +++ b/kernel/kernel/Processor.cpp @@ -42,7 +42,7 @@ namespace Kernel processor.m_gdt = GDT::create(); ASSERT(processor.m_gdt); - processor.m_idt = IDT::create(id == s_bsb_id); + processor.m_idt = IDT::create(); ASSERT(processor.m_idt); return processor;