diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 55cf0098d1ea19e31886c7a60ffcde6f2a901d4d..0bc8ae5a653aa824cac5720a2335ea3711e62ca2 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -43,7 +43,9 @@ static void sched_update_runtime(struct task_struct *task, ktime now) task->runtime = ktime_sub(task->runtime, rt); task->total = ktime_add(task->total, rt); - task->state = TASK_RUN; + + if (task->state == TASK_BUSY) + task->state = TASK_RUN; } /**