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 [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