powerpc/powernv: Always enable SMP when building powernv
authorMichael Ellerman <mpe@ellerman.id.au>
Wed, 5 Apr 2017 02:44:50 +0000 (12:44 +1000)
committerMichael Ellerman <mpe@ellerman.id.au>
Thu, 13 Apr 2017 13:37:17 +0000 (23:37 +1000)
The powernv platform supports Power7 and later CPUs, all of which are
multithreaded and multicore.

As such we never build a SMP=n kernel for those machines, other than
possibly for debugging or running in a simulator.

In the debugging case we can get a similar effect by booting with
nr_cpus=1, or there's always the option of building a custom kernel with
SMP hacked out.

For running in simulators the code size reduction from building without
SMP is not particularly important, what matters is the number of
instructions executed. A quick test shows that a SMP=y kernel takes ~6%
more instructions to boot to a shell. Booting with nr_cpus=1 recovers
about half that deficit.

On the flip side, keeping the SMP=n kernel building can be a pain at
times. And although we've mostly kept it building in recent years, no
one is regularly testing that the SMP=n kernel actually boots and works
well on these machines.

Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/powerpc/platforms/powernv/Kconfig

index 2489805..6a6f4ef 100644 (file)
@@ -21,6 +21,7 @@ config PPC_POWERNV
        select CPU_FREQ_GOV_CONSERVATIVE
        select PPC_DOORBELL
        select MMU_NOTIFIER
+       select FORCE_SMP
        default y
 
 config OPAL_PRD