diff --git a/[refs] b/[refs] index be10b3be5408..da445c25f842 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: b5740f4b2cb3503b436925eb2242bc3d75cd3dfe +refs/heads/master: cb297a3e433dbdcf7ad81e0564e7b804c941ff0d diff --git a/trunk/kernel/sched/rt.c b/trunk/kernel/sched/rt.c index 3640ebbb466b..f42ae7fb5ec5 100644 --- a/trunk/kernel/sched/rt.c +++ b/trunk/kernel/sched/rt.c @@ -1587,6 +1587,11 @@ static int push_rt_task(struct rq *rq) if (!next_task) return 0; +#ifdef __ARCH_WANT_INTERRUPTS_ON_CTXSW + if (unlikely(task_running(rq, next_task))) + return 0; +#endif + retry: if (unlikely(next_task == rq->curr)) { WARN_ON(1);