summaryrefslogtreecommitdiff
path: root/kernel/cpu/idt.S
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--kernel/cpu/idt.S6
1 files changed, 4 insertions, 2 deletions
diff --git a/kernel/cpu/idt.S b/kernel/cpu/idt.S
index 05c34f5..05f80c7 100644
--- a/kernel/cpu/idt.S
+++ b/kernel/cpu/idt.S
@@ -135,13 +135,15 @@ isr_stub_\num:
ISRRestore
.endm
+# we have to send eoi first since
+# idt_pic_timer may not return
.macro PICTimer num
.align 8
isr_stub_\num:
ISRSave
- callq idt_pic_timer
- movq $\num, %rdi
callq idt_pic_eoi
+ movq $\num, %rdi
+ callq idt_pic_timer
ISRRestore
.endm