From cc7be46b7d72baef682f3178581515372f92c6be Mon Sep 17 00:00:00 2001 From: Ken Sato Date: Mon, 25 Dec 2017 13:32:42 +0900 Subject: [PATCH] make sure to context-switch to idle thread when therad's status is PS_EXITED refs #1029 --- kernel/process.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/kernel/process.c b/kernel/process.c index 76c5ac1d..cdd4ab35 100644 --- a/kernel/process.c +++ b/kernel/process.c @@ -3139,7 +3139,8 @@ redo: } } - if (v->flags & CPU_FLAG_NEED_MIGRATE) { + if (v->flags & CPU_FLAG_NEED_MIGRATE || + prev->status == PS_EXITED) { next = &cpu_local_var(idle); } else { /* Pick a new running process or one that has a pending signal */