On Fri, 16 Feb 2007, Siddha, Suresh B wrote:

> Periodic load balancing in recent kernels happen in the softirq.
> In certain -rt configurations, these softirqs are handled in softirqd
> context. And hence the check for idle processor was always returning
> busy (as nr_running > 1).
>
> This patch captures the idle information at the tick and passes this info
> to softirq context through an element 'idle_at_tick' in rq.

I haven't had the time yet to look too detailed at this patch.

>
> Signed-off-by: Suresh Siddha <[EMAIL PROTECTED]>
> ---
>

>  {
>       unsigned long long now = sched_clock();
>       struct task_struct *p = current;
> -     int cpu = smp_processor_id();
> +     int cpu = smp_processor_id(), idle_at_tick = idle_cpu(cpu);
>       struct rq *rq = cpu_rq(cpu);
>

But I would recommend that the idle_at_tick should be on a separate line.

I'll try to look deeper at your patches tomorrow. I've also found that I'm
having some latency problems in -rt that I think might be related to
migration.

-- Steve

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to