diff --git a/kernel/sched/rt.c b/kernel/sched/rt.c index 4d6f1bc86b1ba2dcbcd013324cbbe5835b241e8a..5dff9a6fe2cf87752d75db11c316b2f1e4d529d6 100644 --- a/kernel/sched/rt.c +++ b/kernel/sched/rt.c @@ -1874,6 +1874,9 @@ static int push_rt_task(struct rq *rq) goto retry; } + if (unlikely(!cpu_online(lowest_rq->cpu))) + goto out; + deactivate_task(rq, next_task, 0); set_task_cpu(next_task, lowest_rq->cpu); activate_task(lowest_rq, next_task, 0);