[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <alpine.LFD.2.00.0905061044170.3388@localhost.localdomain>
Date: Wed, 6 May 2009 10:44:59 +0200 (CEST)
From: Thomas Gleixner <tglx@...utronix.de>
To: Frank Rowand <frank.rowand@...sony.com>
cc: mingo@...hat.com, linux-kernel@...r.kernel.org
Subject: Re: [patch] RT: calc_load() uses wrong variable to calculate RT
load
On Tue, 5 May 2009, Frank Rowand wrote:
> In calc_load() use RT tasks to calculate the RT load.
>
> Signed-off-by: Frank Rowand <frank.rowand@...sony.com>
>
> ---
>
> Ingo,
>
> In calc_load():
>
> #ifdef CONFIG_PREEMPT_RT
> active_rt_tasks = count_active_rt_tasks();
> #endif
>
> but active_rt_tasks is then not used. I have not read through enough code
> to verify my supposition, but the obvious use of this variable would be for
> the calculation of the RT load average.
>
> If my supposition is correct, this patch fixes the problem.
Yep, that's correct. Though I ponder to get rid of avenrun_rt all
together.
Thanks,
tglx
> The patch is compile tested only.
>
> -Frank Rowand
> Sony Corporation of America
>
>
> Index: linux-2.6.29.2/kernel/timer.c
> ===================================================================
> --- linux-2.6.29.2.orig/kernel/timer.c
> +++ linux-2.6.29.2/kernel/timer.c
> @@ -1249,9 +1249,9 @@ static inline void calc_load(unsigned lo
> CALC_LOAD(avenrun[1], EXP_5, active_tasks);
> CALC_LOAD(avenrun[2], EXP_15, active_tasks);
> #ifdef CONFIG_PREEMPT_RT
> - CALC_LOAD(avenrun_rt[0], EXP_1, active_tasks);
> - CALC_LOAD(avenrun_rt[1], EXP_5, active_tasks);
> - CALC_LOAD(avenrun_rt[2], EXP_15, active_tasks);
> + CALC_LOAD(avenrun_rt[0], EXP_1, active_rt_tasks);
> + CALC_LOAD(avenrun_rt[1], EXP_5, active_rt_tasks);
> + CALC_LOAD(avenrun_rt[2], EXP_15, active_rt_tasks);
> #endif
> count += LOAD_FREQ;
>
>
--
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