* Gautham R Shenoy <e...@linux.vnet.ibm.com> [2020-07-17 11:18:21]: > On Tue, Jul 14, 2020 at 10:06:17AM +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. > > > > Cc: linuxppc-dev <linuxppc-dev@lists.ozlabs.org> > > Cc: Michael Ellerman <micha...@au1.ibm.com> > > Cc: Nick Piggin <npig...@au1.ibm.com> > > Cc: Oliver OHalloran <olive...@au1.ibm.com> > > Cc: Nathan Lynch <nath...@linux.ibm.com> > > Cc: Michael Neuling <mi...@linux.ibm.com> > > Cc: Anton Blanchard <an...@au1.ibm.com> > > Cc: Gautham R Shenoy <e...@linux.vnet.ibm.com> > > Cc: Vaidyanathan Srinivasan <sva...@linux.ibm.com> > > Signed-off-by: Srikar Dronamraju <sri...@linux.vnet.ibm.com> > > I don't see a problem with this. > > However, since we are now going to be maintaining a single topology > structure, wouldn't it be better to collate all the changes being made > to the mask_functions/flags/names of this structure within a single > function so that it becomes easier to keep track of what all changes > are going into the topology and why are we doing it? >
My intent was to move the topology updates early as soon as they are detected. Currently the shared_cache want cannot be detected early. But I think its possible to detect shared_cache early with some cleanups. And if we do, then we should be able to call this up pretty early. > > > --- > > arch/powerpc/kernel/smp.c | 12 ++++++------ > > 1 file changed, 6 insertions(+), 6 deletions(-) > > > > diff --git a/arch/powerpc/kernel/smp.c b/arch/powerpc/kernel/smp.c > > index 24529f6134aa..7d430fc536cc 100644 > > --- a/arch/powerpc/kernel/smp.c > > +++ b/arch/powerpc/kernel/smp.c > > @@ -892,6 +892,12 @@ static int init_big_cores(void) > > } > > > > has_big_cores = true; > > + > > +#ifdef CONFIG_SCHED_SMT > > + pr_info("Big cores detected. Using small core scheduling\n"); > > + powerpc_topology[0].mask = smallcore_smt_mask; > > +#endif > > + > > return 0; > > } > > > > @@ -1383,12 +1389,6 @@ 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 > > set_sched_topology(powerpc_topology); > > } > > > > -- > > 2.17.1 > > -- Thanks and Regards Srikar Dronamraju