From 04e3bbd771c8a50822aa9e75c8715349fc4ecda4 Mon Sep 17 00:00:00 2001 From: Amlal Date: Mon, 9 Sep 2024 10:27:19 +0200 Subject: META: Bumping repository. Signed-off-by: Amlal --- dev/ZKA/HALKit/AMD64/HalMPContextSwitch.asm | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) (limited to 'dev/ZKA/HALKit/AMD64/HalMPContextSwitch.asm') diff --git a/dev/ZKA/HALKit/AMD64/HalMPContextSwitch.asm b/dev/ZKA/HALKit/AMD64/HalMPContextSwitch.asm index c61db220..945830e2 100644 --- a/dev/ZKA/HALKit/AMD64/HalMPContextSwitch.asm +++ b/dev/ZKA/HALKit/AMD64/HalMPContextSwitch.asm @@ -11,13 +11,18 @@ [global mp_do_user_switch] [global mp_do_context_switch_pre] +[global mp_user_switch_proc] +[global mp_user_switch_proc_end] section .text -;; Does a user mode switch, and then loads the task to be run. -;; rcx: code ptr. -;; rdx: stack ptr. +;; @brief Switch to user mode. mp_do_user_switch: + mov rbp, rsp + mov rsp, mp_user_switch_proc_end + + invlpg [0] + mov ax, 0x18 | 3 mov ds, ax mov es, ax @@ -36,8 +41,6 @@ mp_do_user_switch: mov rdx, mp_user_switch_proc push rdx - mov rsp, mp_user_switch_proc_end - o64 iret section .bss -- cgit v1.2.3