Siddha, Suresh B wrote:
On Wed, Apr 13, 2005 at 10:08:28PM +0200, Ingo Molnar wrote:
* Siddha, Suresh B <[email protected]> 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;
- }
- }
Yep that was broken :(
Thanks for picking that up Suresh.
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.
Yes, that's right.
--
SUSE Labs, Novell Inc.
-
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/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]