From 26849aa2b3f49cbad8be4688800667e2d89aa5db Mon Sep 17 00:00:00 2001 From: dzwdz Date: Fri, 15 Apr 2022 23:04:58 +0200 Subject: kernel/vfs: don't hang waiting for a vfs backend after it exit()s --- src/kernel/proc.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/kernel/proc.c') diff --git a/src/kernel/proc.c b/src/kernel/proc.c index 3024957..ad2a72b 100644 --- a/src/kernel/proc.c +++ b/src/kernel/proc.c @@ -189,6 +189,10 @@ void process_transition(struct process *p, enum process_state state) { void process_kill(struct process *proc, int ret) { // TODO kill children + if (proc->handled_req) { + regs_savereturn(&proc->handled_req->caller->regs, -1); + process_transition(proc->handled_req->caller, PS_RUNNING); + } process_transition(proc, PS_DEAD); proc->death_msg = ret; process_try2collect(proc); -- cgit v1.2.3