[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <AANLkTimO+aBQD530btPmH3o7j931KEmFP=GKia-039wO@mail.gmail.com>
Date: Tue, 7 Dec 2010 11:25:43 +0800
From: Yong Zhang <yong.zhang0@...il.com>
To: Steven Rostedt <rostedt@...dmis.org>
Cc: linux-kernel@...r.kernel.org, Ingo Molnar <mingo@...e.hu>,
Andrew Morton <akpm@...ux-foundation.org>,
Peter Zijlstra <a.p.zijlstra@...llo.nl>,
Gregory Haskins <ghaskins@...ell.com>
Subject: Re: [RFC][PATCH 01/10] sched: Change rt_task(prev) in pre_schedule_rt
to likely
On Tue, Dec 7, 2010 at 9:58 AM, Steven Rostedt <rostedt@...dmis.org> wrote:
> From: Steven Rostedt <srostedt@...hat.com>
>
> 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))
I have sent a more radical patch before but it get ignored.
http://marc.info/?l=linux-kernel&m=126572702600950&w=2
>
> Cc: Peter Zijlstra <a.p.zijlstra@...llo.nl>
> Cc: Gregory Haskins <ghaskins@...ell.com>
> Signed-off-by: Steven Rostedt <rostedt@...dmis.org>
> ---
> 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)
IMHO, we can delete the checking for rt_task(prev).
Or am I missing something?
Thanks,
Yong
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists