From 458978e7b8a6d50566fc8b68558f76f6b0465c52 Mon Sep 17 00:00:00 2001 From: dzwdz Date: Fri, 15 Sep 2023 00:29:11 +0200 Subject: kern: fix GDT order for 64bit sysret --- src/kernel/proc.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/kernel/proc.c') diff --git a/src/kernel/proc.c b/src/kernel/proc.c index 4164874..ee99603 100644 --- a/src/kernel/proc.c +++ b/src/kernel/proc.c @@ -44,7 +44,9 @@ Proc *proc_seed(void *data, size_t datalen) { void __user *init_base = (userptr_t)0x200000; for (uintptr_t off = 0; off < datalen; off += PAGE_SIZE) pagedir_map(proc_first->pages, init_base + off, data + off, true, true); + proc_first->regs.rcx = (uintptr_t)init_base; // SYSRET jumps to %rcx + // proc_first->regs.r11 |= 1<<9; /* enable interrupts */ return proc_first; } -- cgit v1.2.3