* Vincent Guittot <[email protected]> [2015-02-27 16:54:13]:
> Add the SD_PREFER_SIBLING flag for SMT level in order to ensure that > the scheduler will put at least 1 task per core. > > Signed-off-by: Vincent Guittot <[email protected]> > Reviewed-by: Preeti U. Murthy <[email protected]> > --- > kernel/sched/core.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/kernel/sched/core.c b/kernel/sched/core.c > index 29f7037..753f0a2 100644 > --- a/kernel/sched/core.c > +++ b/kernel/sched/core.c > @@ -6240,6 +6240,7 @@ sd_init(struct sched_domain_topology_level *tl, int cpu) > */ > > if (sd->flags & SD_SHARE_CPUCAPACITY) { > + sd->flags |= SD_PREFER_SIBLING; > sd->imbalance_pct = 110; > sd->smt_gain = 1178; /* ~15% */ > Prefer siblings logic dates back to https://lkml.org/lkml/2009/8/27/210 and only used in update_sd_lb_stats() where we have if (child && child->flags & SD_PREFER_SIBLING) prefer_sibling = 1; However what confuses me is why should we even look at a child domain's flag to balance tasks across the current sched domain? Why cant we just set and use a sd flag at current level than to look at child domain flag? > -- > 1.9.1 > > -- > 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/ -- Thanks and Regards Srikar Dronamraju -- 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/

