Simplify task switches

No longer using the rsp from the entry to the kernel, but instead
switching rsp at task-switching time in assembly.

This currently breaks fork()
This commit is contained in:
Justin C. Miller
2019-03-31 22:49:24 -07:00
parent 5cdbedd4d1
commit ca2362f858
21 changed files with 311 additions and 178 deletions

View File

@@ -9,7 +9,6 @@ isr_handler_prelude:
mov rdi, rsp
mov rsi, rsp
call isr_handler
mov rsp, rax
jmp isr_handler_return
extern irq_handler
@@ -21,7 +20,6 @@ irq_handler_prelude:
mov rdi, rsp
mov rsi, rsp
call irq_handler
mov rsp, rax
; fall through to isr_handler_return
global isr_handler_return