powerpc/smp: Move topology fixups into a new function

Move topology fixup based on the platform attributes into its own
function which is called just before set_sched_topology.

Signed-off-by: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
Reviewed-by: Gautham R. Shenoy <ego@linux.vnet.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20200810071834.92514-5-srikar@linux.vnet.ibm.com
This commit is contained in:
Srikar Dronamraju 2020-08-10 12:48:28 +05:30 committed by Michael Ellerman
parent 5e93f16ae4
commit 3c6032a8fe

View File

@ -1363,6 +1363,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)
{
/*
@ -1376,12 +1386,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);
}