lkml.org 
[lkml]   [2005]   [Apr]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[Patch] sched: remove unnecessary sched domains
    Appended patch removes the unnecessary scheduler domains(containing
    only one sched group) setup during the sched-domain init.

    For example on x86_64, we always have NUMA configured in. On Intel EM64T
    systems, top most sched domain will be of NUMA and with only one sched_group in
    it.

    With fork/exec balances(recent Nick's fixes in -mm tree), we always endup
    taking wrong decisions because of this topmost domain (as it contains only
    one group and find_idlest_group always returns NULL). We will endup loading
    HT package completely first, letting active load balance kickin and correct it.

    In general, this patch also makes sense with out recent Nick's fixes
    in -mm.

    Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>


    --- linux-2.6.12-rc1-mm4/kernel/sched.c 2005-04-01 10:07:24.183605296 -0800
    +++ linux/kernel/sched.c 2005-04-01 15:29:28.274896888 -0800
    @@ -4748,6 +4748,21 @@
    unsigned long flags;
    runqueue_t *rq = cpu_rq(cpu);
    int local = 1;
    + struct sched_domain *tmp = sd, *tmp1;
    +
    + /* Remove the sched domains which has only one group
    + */
    + while (tmp) {
    + tmp1 = tmp->parent;
    + if (!tmp1)
    + break;
    + if (tmp1->groups == tmp1->groups->next)
    + tmp->parent = tmp1->parent;
    + tmp = tmp->parent;
    + }
    +
    + if (sd->parent && sd->groups && sd->groups == sd->groups->next)
    + sd = sd->parent;

    sched_domain_debug(sd, cpu);

    -
    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/
    \
     
     \ /
      Last update: 2005-04-06 13:31    [W:0.022 / U:63.472 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site