[kernel] Save rsp0 to a process' TSS too

On task switch a process' rsp0 value in its TSS was not getting updated.
This commit is contained in:
Justin C. Miller
2022-09-16 19:39:32 -07:00
parent b4f13d694f
commit 9f981ada41

View File

@@ -88,9 +88,11 @@ kernel_to_user_trampoline:
pop rbp pop rbp
pop rcx pop rcx
mov r11, [gs:CPU_DATA.rflags3] mov r11, [gs:CPU_DATA.tss]
mov [r11 + TSS.rsp0], rsp
mov [gs:CPU_DATA.rsp0], rsp mov [gs:CPU_DATA.rsp0], rsp
mov rsp, [gs:CPU_DATA.rsp3] mov rsp, [gs:CPU_DATA.rsp3]
mov r11, [gs:CPU_DATA.rflags3]
swapgs swapgs
o64 sysret o64 sysret