summaryrefslogtreecommitdiff
path: root/arch/x86/machine/trap.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/machine/trap.c')
-rw-r--r--arch/x86/machine/trap.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/x86/machine/trap.c b/arch/x86/machine/trap.c
index 8591aa50..254f5edc 100644
--- a/arch/x86/machine/trap.c
+++ b/arch/x86/machine/trap.c
@@ -30,6 +30,7 @@
#include <machine/pic.h>
#include <machine/pmap.h>
#include <machine/strace.h>
+#include <machine/tcb.h>
#include <machine/trap.h>
/*
@@ -75,6 +76,7 @@ void trap_isr_machine_check(void);
void trap_isr_simd_fp_exception(void);
void trap_isr_pic_int7(void);
void trap_isr_pic_int15(void);
+void trap_isr_reschedule(void);
void trap_isr_pmap_update(void);
void trap_isr_cpu_halt(void);
void trap_isr_lapic_timer(void);
@@ -201,6 +203,8 @@ trap_setup(void)
trap_isr_pic_int15, pic_intr_spurious);
/* System defined traps */
+ trap_install(TRAP_RESCHEDULE, TRAP_HF_NOPREEMPT,
+ trap_isr_reschedule, tcb_reschedule_intr);
trap_install(TRAP_PMAP_UPDATE, TRAP_HF_NOPREEMPT,
trap_isr_pmap_update, pmap_update_intr);
trap_install(TRAP_CPU_HALT, TRAP_HF_NOPREEMPT,