From: Steven Rostedt As found with the branch annotation profiler, the unlikely(rt_task(prev)) in pre_schedule_rt() is always wrong. In fact it should be likely due to the fact that we got to this function because we used prev's scheduling class (which had to be rt). Change the unlikely(rt_task(prev)) to likely(rt_task(prev)) Cc: Peter Zijlstra Cc: Gregory Haskins Signed-off-by: Steven Rostedt --- kernel/sched_rt.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/kernel/sched_rt.c b/kernel/sched_rt.c index bea7d79..7a5c4db 100644 --- a/kernel/sched_rt.c +++ b/kernel/sched_rt.c @@ -1474,7 +1474,7 @@ skip: static void pre_schedule_rt(struct rq *rq, struct task_struct *prev) { /* Try to pull RT tasks here if we lower this rq's prio */ - if (unlikely(rt_task(prev)) && rq->rt.highest_prio.curr > prev->prio) + if (likely(rt_task(prev)) && rq->rt.highest_prio.curr > prev->prio) pull_rt_task(rq); } -- 1.7.2.3 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/