diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 79e48e6a9385db7c516c2a3828835e4fa594749e..7bf0418dc60fa1f1559c049d125475ee39a65d7c 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -4378,6 +4378,13 @@ static void migrate_tasks(unsigned int dead_cpu) */ rq->stop = NULL; + /* + * put_prev_task() and pick_next_task() sched + * class method both need to have an up-to-date + * value of rq->clock[_task] + */ + update_rq_clock(rq); + for ( ; ; ) { /* * There's this thread running, bail when that's the only