In commit d70a54e2d085 ("powerpc/powernv: Ignore smt-enabled on Power8 and later") we disabled smt-enabled=off on Power8 and later CPUs because the subcore logic required all CPUs to be booted.
However Power9 doesn't support subcore, so we can support smt-enabled=off on Power9. Fix the code to do that. Fixes: c3ab300ea555 ("powerpc: Add POWER9 cputable entry") Signed-off-by: Michael Ellerman <m...@ellerman.id.au> --- arch/powerpc/platforms/powernv/smp.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/arch/powerpc/platforms/powernv/smp.c b/arch/powerpc/platforms/powernv/smp.c index 0d354e19ef92..3ab5755eb09f 100644 --- a/arch/powerpc/platforms/powernv/smp.c +++ b/arch/powerpc/platforms/powernv/smp.c @@ -254,12 +254,12 @@ static void pnv_smp_cpu_kill_self(void) static int pnv_cpu_bootable(unsigned int nr) { /* - * Starting with POWER8, the subcore logic relies on all threads of a - * core being booted so that they can participate in split mode - * switches. So on those machines we ignore the smt_enabled_at_boot - * setting (smt-enabled on the kernel command line). + * On POWER8 the subcore logic relies on all threads of a core being + * booted so that they can participate in split mode switches. So on + * those machines we ignore the smt_enabled_at_boot setting (smt-enabled + * on the kernel command line). */ - if (cpu_has_feature(CPU_FTR_ARCH_207S)) + if (cpu_has_feature(CPU_FTR_ARCH_207S) && !cpu_has_feature(CPU_FTR_ARCH_300)) return 1; return smp_generic_cpu_bootable(nr); -- 2.20.1