lkml.org 
[lkml]   [2009]   [Jan]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    SubjectRe: [git pull] scheduler fixes

    * Mike Galbraith <efault@gmx.de> wrote:

    > On Sat, 2009-01-17 at 04:43 -0800, Andrew Morton wrote:
    > > http://bugzilla.kernel.org/show_bug.cgi?id=12465 just popped up - another
    > > scheduler regression. It has been bisected.
    >
    > Seems pretty clear. I'd suggest reverting it.

    We can revert it (and will revert it if no solution is found), but i'd
    also like to understand why it happens, because that kind of regression
    from this change is unexpected - we might be hiding some bug that could
    pop up under less debuggable circumstances, so we need to understand it
    while we have a chance.

    Below is the commit in question. Avi, any ideas what makes KVM special
    here? Perhaps its use of "preempt notifiers" is causing a problem somehow?

    Ingo

    -------------->
    From 14800984706bf6936bbec5187f736e928be5c218 Mon Sep 17 00:00:00 2001
    From: Mike Galbraith <efault@gmx.de>
    Date: Fri, 7 Nov 2008 15:26:50 +0100
    Subject: [PATCH] sched: fine-tune SD_MC_INIT

    Tune SD_MC_INIT the same way as SD_CPU_INIT:
    unset SD_BALANCE_NEWIDLE, and set SD_WAKE_BALANCE.

    This improves vmark by 5%:

    vmark 132102 125968 125497 messages/sec avg 127855.66 .984
    vmark 139404 131719 131272 messages/sec avg 134131.66 1.033

    Signed-off-by: Mike Galbraith <efault@gmx.de>
    Acked-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

    # *DOCUMENTATION*
    ---
    include/linux/topology.h | 2 +-
    1 files changed, 1 insertions(+), 1 deletions(-)

    diff --git a/include/linux/topology.h b/include/linux/topology.h
    index 34a7ee0..a8d8405 100644
    --- a/include/linux/topology.h
    +++ b/include/linux/topology.h
    @@ -120,10 +120,10 @@ void arch_update_cpu_topology(void);
    .wake_idx = 1, \
    .forkexec_idx = 1, \
    .flags = SD_LOAD_BALANCE \
    - | SD_BALANCE_NEWIDLE \
    | SD_BALANCE_FORK \
    | SD_BALANCE_EXEC \
    | SD_WAKE_AFFINE \
    + | SD_WAKE_BALANCE \
    | SD_SHARE_PKG_RESOURCES\
    | BALANCE_FOR_MC_POWER, \
    .last_balance = jiffies, \

    \
     
     \ /
      Last update: 2009-01-17 17:03    [W:2.285 / U:0.124 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site