Re: [PATCH v2 04/10] powerpc/smp: Enable small core scheduling sooner
* Gautham R Shenoy [2020-07-22 11:29:25]: > Hello Srikar, > > On Tue, Jul 21, 2020 at 05:08:08PM +0530, Srikar Dronamraju wrote: > > Enable small core scheduling as soon as we detect that we are in a > > system that supports thread group. Doing so would avoid a redundant > > check. > > The patch looks good to me. However, I think the commit message still > reflect the v1 code where we were moving the functionality from > smp_cpus_done() to init_big_cores(). > > In this we are moving it to a helper function to collate all fixups to > topology. > Right. Thanks for pointing , will correct this. -- Thanks and Regards Srikar Dronamraju
Re: [PATCH v2 04/10] powerpc/smp: Enable small core scheduling sooner
Hello Srikar, On Tue, Jul 21, 2020 at 05:08:08PM +0530, Srikar Dronamraju wrote: > Enable small core scheduling as soon as we detect that we are in a > system that supports thread group. Doing so would avoid a redundant > check. The patch looks good to me. However, I think the commit message still reflect the v1 code where we were moving the functionality from smp_cpus_done() to init_big_cores(). In this we are moving it to a helper function to collate all fixups to topology. > > Cc: linuxppc-dev > Cc: LKML > Cc: Michael Ellerman > Cc: Ingo Molnar > Cc: Peter Zijlstra > Cc: Valentin Schneider > Cc: Nick Piggin > Cc: Oliver OHalloran > Cc: Nathan Lynch > Cc: Michael Neuling > Cc: Anton Blanchard > Cc: Gautham R Shenoy > Cc: Vaidyanathan Srinivasan > Cc: Jordan Niethe > Signed-off-by: Srikar Dronamraju > --- > Changelog v1 -> v2: > powerpc/smp: Enable small core scheduling sooner > Restored the previous info msg (Jordan) > Moved big core topology fixup to fixup_topology (Gautham) > > arch/powerpc/kernel/smp.c | 17 +++-- > 1 file changed, 11 insertions(+), 6 deletions(-) > > diff --git a/arch/powerpc/kernel/smp.c b/arch/powerpc/kernel/smp.c > index 1ce95da00cb6..72f16dc0cb26 100644 > --- a/arch/powerpc/kernel/smp.c > +++ b/arch/powerpc/kernel/smp.c > @@ -1370,6 +1370,16 @@ int setup_profiling_timer(unsigned int multiplier) > return 0; > } > > +static void fixup_topology(void) > +{ > +#ifdef CONFIG_SCHED_SMT > + if (has_big_cores) { > + pr_info("Big cores detected but using small core scheduling\n"); > + powerpc_topology[0].mask = smallcore_smt_mask; > + } > +#endif > +} > + > void __init smp_cpus_done(unsigned int max_cpus) > { > /* > @@ -1383,12 +1393,7 @@ void __init smp_cpus_done(unsigned int max_cpus) > > dump_numa_cpu_topology(); > > -#ifdef CONFIG_SCHED_SMT > - if (has_big_cores) { > - pr_info("Big cores detected but using small core scheduling\n"); > - powerpc_topology[0].mask = smallcore_smt_mask; > - } > -#endif > + fixup_topology(); > set_sched_topology(powerpc_topology); > } > > -- > 2.17.1 >
[PATCH v2 04/10] powerpc/smp: Enable small core scheduling sooner
Enable small core scheduling as soon as we detect that we are in a system that supports thread group. Doing so would avoid a redundant check. Cc: linuxppc-dev Cc: LKML Cc: Michael Ellerman Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Valentin Schneider Cc: Nick Piggin Cc: Oliver OHalloran Cc: Nathan Lynch Cc: Michael Neuling Cc: Anton Blanchard Cc: Gautham R Shenoy Cc: Vaidyanathan Srinivasan Cc: Jordan Niethe Signed-off-by: Srikar Dronamraju --- Changelog v1 -> v2: powerpc/smp: Enable small core scheduling sooner Restored the previous info msg (Jordan) Moved big core topology fixup to fixup_topology (Gautham) arch/powerpc/kernel/smp.c | 17 +++-- 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/arch/powerpc/kernel/smp.c b/arch/powerpc/kernel/smp.c index 1ce95da00cb6..72f16dc0cb26 100644 --- a/arch/powerpc/kernel/smp.c +++ b/arch/powerpc/kernel/smp.c @@ -1370,6 +1370,16 @@ int setup_profiling_timer(unsigned int multiplier) return 0; } +static void fixup_topology(void) +{ +#ifdef CONFIG_SCHED_SMT + if (has_big_cores) { + pr_info("Big cores detected but using small core scheduling\n"); + powerpc_topology[0].mask = smallcore_smt_mask; + } +#endif +} + void __init smp_cpus_done(unsigned int max_cpus) { /* @@ -1383,12 +1393,7 @@ void __init smp_cpus_done(unsigned int max_cpus) dump_numa_cpu_topology(); -#ifdef CONFIG_SCHED_SMT - if (has_big_cores) { - pr_info("Big cores detected but using small core scheduling\n"); - powerpc_topology[0].mask = smallcore_smt_mask; - } -#endif + fixup_topology(); set_sched_topology(powerpc_topology); } -- 2.17.1