Messages in this thread | | | Date | Fri, 15 Apr 2005 16:36:33 -0700 | From | "Siddha, Suresh B" <> | Subject | Re: [patch] sched: fix sched domain degenerate |
| |
On Fri, Apr 15, 2005 at 11:03:20PM +1000, Nick Piggin wrote: > Index: linux-2.6/kernel/sched.c > =================================================================== > --- linux-2.6.orig/kernel/sched.c 2005-04-15 22:52:25.000000000 +1000 > +++ linux-2.6/kernel/sched.c 2005-04-15 22:58:54.000000000 +1000 > @@ -4844,7 +4844,14 @@ static int __devinit sd_parent_degenerat > /* WAKE_BALANCE is a subset of WAKE_AFFINE */ > if (cflags & SD_WAKE_AFFINE) > pflags &= ~SD_WAKE_BALANCE; > - if ((~sd->flags) & parent->flags) > + /* Flags needing groups don't count if only 1 group in parent */ > + if (parent->groups == parent->groups->next) { > + pflags &= ~(SD_LOAD_BALANCE | > + SD_BALANCE_NEWIDLE | > + SD_BALANCE_FORK | > + SD_BALANCE_EXEC); > + }
This patch works fine and I like this fix. But should n't we be adding SD_WAKE_AFFINE and SD_WAKE_BALANCE to this list?
And about SD_BALANCE_FORK, now that we have multi level sbe/sbf, we should add this flag to SD_CPU/SIBLING_INIT too..
thanks, suresh - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |