X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fthreads%2Finterrupt.c;fp=src%2Fthreads%2Finterrupt.c;h=eb10cd603669cabfa417fd48d9dd87f227945a17;hb=447755c02e674e65801fbb783823009e32458753;hp=8173ec11dcc44767c7cd5d02158651e48433eab4;hpb=28cfcb0474595208626ae9984c9be99fd92f8159;p=pintos-anon diff --git a/src/threads/interrupt.c b/src/threads/interrupt.c index 8173ec1..eb10cd6 100644 --- a/src/threads/interrupt.c +++ b/src/threads/interrupt.c @@ -91,6 +91,10 @@ intr_init (void) /* Initialize interrupt controller. */ pic_init (); + /* Initialize IDT. */ + for (i = 0; i < INTR_CNT; i++) + idt[i] = make_trap_gate (intr_stubs[i], 0); + /* Load IDT register. */ idtr_operand = make_idtr_operand (sizeof idt - 1, idt); asm volatile ("lidt %0" :: "m" (idtr_operand));