add a function that gets called after every system call and make all threads quit on program exit

This commit is contained in:
Matheus
2022-12-25 15:46:37 -03:00
parent 0cf4287719
commit 7e975a3837
5 changed files with 53 additions and 11 deletions
+5
View File
@@ -0,0 +1,5 @@
#include <kernel/sched.h>
void postsyscall(){
sched_threadexitcheck();
}
+15 -8
View File
@@ -175,22 +175,29 @@ asm_syscall_entry:
call [func_table + rax * 8]
; restore entry state
push rax
push rdx
; DEBUG STUFF
;push rax
;push rdx
;mov rsi,rdx
;mov rdi,r15
;extern syscalllogger
;call syscalllogger
;pop rdx
;pop rax
extern postsyscall
call postsyscall
; DEBUG STUFF END
pop rdx
pop rax
; restore entry state
mov r11, 0x43 ; user data
mov es,r11