[RFC PATCH] arm64: force CONFIG_SMP=y and remove redundant #ifdefs

Will Deacon will.deacon at arm.com
Wed Jul 8 07:09:24 PDT 2015


On Wed, Jul 08, 2015 at 11:58:47AM +0100, Catalin Marinas wrote:
> On Tue, Jul 07, 2015 at 07:26:15PM +0100, Will Deacon wrote:
> > Nobody seems to be producing !SMP systems anymore, so this is just
> > becoming a source of kernel bugs, particularly if people want to use
> > coherent DMA with non-shared pages.
> > 
> > This patch forces CONFIG_SMP=y for arm64, removing a modest amount of
> > code in the process.
> > 
> > Signed-off-by: Will Deacon <will.deacon at arm.com>
> > ---
> > 
> > I'd appreciate any comments on this. Anybody got a good reason for
> > CONFIG_SMP=n on arm64?
> 
> A good reason would be testing/validating some hardware configurations
> or even KVM/Xen (to see how they cope with UP OS'es). Of course, this
> still requires that someone tests UP builds regularly but at least under
> KVM this shouldn't be hard.

>From a hypervisor perspective, this "validation" is basically just checking
that memory is overridden to be shareable and TLB/cache maintenance is
forced to be broadcast, right?

However, I think a UP kernel should be doing that *anyway* in order to
support cache-coherent DMA (potentially behind an SMMU using CPU page
tables), so by the time you fix !SMP kernels to do all that, they're
basically indistinguishable imo.

> An alternative, which does not remove any code:

Bah, removing the code is what made it fun :)

Will



More information about the linux-arm-kernel mailing list