[kernel] Make IDT per-cpu, not global

Since we modify IST entries while handling interrupts, the IDT cannot be
a global data structure. Allocate new ones for each CPU.
This commit is contained in:
Justin C. Miller
2021-02-19 21:51:25 -08:00
parent 2d6987341c
commit 6a41446185
7 changed files with 28 additions and 19 deletions

View File

@@ -3,6 +3,7 @@
#include <stdint.h>
class GDT;
class IDT;
class lapic;
class process;
struct TCB;
@@ -30,6 +31,7 @@ struct cpu_data
TCB *tcb;
thread *thread;
process *process;
IDT *idt;
TSS *tss;
GDT *gdt;