summaryrefslogtreecommitdiff
path: root/sys/arch/amd64/cpu/idt.S
diff options
context:
space:
mode:
Diffstat (limited to 'sys/arch/amd64/cpu/idt.S')
-rw-r--r--sys/arch/amd64/cpu/idt.S13
1 files changed, 10 insertions, 3 deletions
diff --git a/sys/arch/amd64/cpu/idt.S b/sys/arch/amd64/cpu/idt.S
index b7169d8..729d958 100644
--- a/sys/arch/amd64/cpu/idt.S
+++ b/sys/arch/amd64/cpu/idt.S
@@ -28,12 +28,10 @@
*/
#include <md/kfence.h>
+#include <md/idt.h>
#define KERNEL_CS 0x08
-#define INT_GATE 0x8E
-#define TRAP_GATE 0x8F
-
.macro set_trap vector, isr
movq \vector, %rdi
movq $TRAP_GATE, %rsi
@@ -308,6 +306,15 @@ page_fault:
jmp 1b
hlt
+ .globl lapic_tmr_isr
+lapic_tmr_isr:
+ KFENCE
+ push_frame 0x81
+ nop
+ pop_frame 0x81
+ KFENCE
+ iretq
+
.section .data
.align 8
IDT: