mirror of
https://github.com/Mathewnd/Astral.git
synced 2026-10-29 21:58:20 +00:00
vmm: destroy context
This commit is contained in:
@@ -28,7 +28,10 @@ syscallret syscall_fork(arch_regs* ctx){
|
||||
int err = vmm_fork(thread->ctx, newthread->ctx);
|
||||
|
||||
if(err){
|
||||
printf("fork: VMM_FORK FAILED BUT THREAD DEALLOCATION IS NOT SUPPORTED YET!\n");
|
||||
vmm_destroy(newthread->ctx);
|
||||
free(newthread->regs);
|
||||
free(newthread->kernelstackbase);
|
||||
free(newthread);
|
||||
retv.errno = err;
|
||||
return retv;
|
||||
}
|
||||
|
||||
@@ -99,9 +99,10 @@ syscallret syscall_waitpid(pid_t pid, int *status, int options){
|
||||
|
||||
thread_t* thread = child->threads;
|
||||
|
||||
// TODO free ctx
|
||||
|
||||
free(thread->regs);
|
||||
free(thread->kernelstackbase);
|
||||
vmm_destroy(thread->ctx);
|
||||
free(thread);
|
||||
free(child);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user