[PATCH 0/2] arm64: Allow erratum 1418040 for late CPUs

Marc Zyngier maz at kernel.org
Tue Jul 28 05:21:10 EDT 2020


Erratum 1418040 currently prevents a late CPU from booting if none
of the early CPUs are affected by it. This is because the handling
is implemented as alternatives, and we have already got rid of them
by the time userspace onlines a new CPU.

A solution to this is to move everything into C code, and rely on
static keys instead. Once this is done, the feature can be allowed
for late CPUs.

Note that CPUs affected by 1418040 also tend to miss AArch32-EL1,
meaning they cannot be used as late CPUs when KVM is enabled and
that their sibblings have AArch32-EL1.

Marc Zyngier (2):
  arm64: Move handling of erratum 1418040 into C code
  arm64: Allow booting of late CPUs affected by erratum 1418040

 arch/arm64/kernel/cpu_errata.c |  2 ++
 arch/arm64/kernel/entry.S      | 21 ---------------------
 arch/arm64/kernel/process.c    | 29 +++++++++++++++++++++++++++++
 3 files changed, 31 insertions(+), 21 deletions(-)

-- 
2.27.0




More information about the linux-arm-kernel mailing list