summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
Diffstat (limited to 'sys')
-rw-r--r--sys/arch/amd64/os/os_process.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/sys/arch/amd64/os/os_process.c b/sys/arch/amd64/os/os_process.c
index 40b1026..21bdd86 100644
--- a/sys/arch/amd64/os/os_process.c
+++ b/sys/arch/amd64/os/os_process.c
@@ -95,5 +95,8 @@ mu_process_init(struct process *process, uintptr_t ip, int flags)
}
tf->rsp = ALIGN_DOWN(STACK_TOP + (PAGESIZE - 1), 16);
+ if (ISSET(flags, PROC_KERN)) {
+ tf->rsp += KERN_BASE;
+ }
return 0;
}