Re: [patch] sched: fix active load balance

From: Siddha, Suresh B
Date: Wed Apr 13 2005 - 15:29:46 EST


On Wed, Apr 13, 2005 at 10:08:28PM +0200, Ingo Molnar wrote:
>
> * Siddha, Suresh B <suresh.b.siddha@xxxxxxxxx> wrote:
>
> > - for_each_domain(target_cpu, sd) {
> > + for_each_domain(target_cpu, sd)
> > if ((sd->flags & SD_LOAD_BALANCE) &&
> > - cpu_isset(busiest_cpu, sd->span)) {
> > - sd = tmp;
> > + cpu_isset(busiest_cpu, sd->span))
> > break;
> > - }
> > - }
>
> hm, the right fix i think is to do:
>
> for_each_domain(target_cpu, tmp) {
> if ((tmp->flags & SD_LOAD_BALANCE) &&
> cpu_isset(busiest_cpu, tmp->span)) {
> sd = tmp;
> break;
> }
> }

Your suggestion also looks similar to my patch. You are also breaking on the
first one.

> because when balancing we want to match the widest-scope domain, not the
> first one.

We want the first domain spanning both the cpu's. That is the domain where
normal load balance failed and we restore to active load balance.

thanks,
suresh
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/