summaryrefslogtreecommitdiff
path: root/sys/arch/amd64/amd64
diff options
context:
space:
mode:
authorIan Moffett <ian@osmora.org>2024-07-16 18:06:45 -0400
committerIan Moffett <ian@osmora.org>2024-07-16 18:06:45 -0400
commit4029ffaf2dde58100b06637cc248b68ac2d3f8b4 (patch)
tree5094762454193ab86a32e41a9fed447395927bfe /sys/arch/amd64/amd64
parentc0d44802625617af6b00cb3f2ad46fd0224229f4 (diff)
kernel/amd64: trap: Set IPL_HIGH in trap_handler()
Signed-off-by: Ian Moffett <ian@osmora.org>
Diffstat (limited to 'sys/arch/amd64/amd64')
-rw-r--r--sys/arch/amd64/amd64/trap.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/sys/arch/amd64/amd64/trap.c b/sys/arch/amd64/amd64/trap.c
index 7b866d8..7615140 100644
--- a/sys/arch/amd64/amd64/trap.c
+++ b/sys/arch/amd64/amd64/trap.c
@@ -35,6 +35,7 @@
#include <sys/syscall.h>
#include <machine/trap.h>
#include <machine/frame.h>
+#include <machine/intr.h>
#define pr_error(fmt, ...) kprintf("trap: " fmt, ##__VA_ARGS__)
@@ -106,6 +107,8 @@ trap_syscall(struct trapframe *tf)
void
trap_handler(struct trapframe *tf)
{
+ splraise(IPL_HIGH);
+
if (tf->trapno >= NELEM(trap_type)) {
panic("Got unknown trap %d\n", tf->trapno);
}