[PATCH 0/4] arm64: errata: Add workaround for Arm errata 3194386 and 3312417

Mark Rutland mark.rutland at arm.com
Wed May 8 01:13:56 PDT 2024


Cortex-X4 and Neoverse-V3 suffer from errata whereby an MSR to the SSBS
special-purpose register does not affect subsequent speculative
instructions, permitting speculative store bypassing for a window of
time. This is described in their Software Developer Errata Notice (SDEN)
documents:

* Cortex-X4 SDEN v8.0, erratum 3194386:
  https://developer.arm.com/documentation/SDEN-2432808/0800/

* Neoverse-V3 SDEN v6.0, erratum 3312417:
  https://developer.arm.com/documentation/SDEN-2891958/0600/

This series (based on v6.9-rc3) adds a workaround for these errata. The
first three patches are preparatory (reintroducing the spec_bar() macro,
and adding MIDR definitions), and the actual workaround is contained
within patch 4.

Mark.

Mark Rutland (4):
  arm64: barrier: Restore spec_bar() macro
  arm64: cputype: Add Cortex-X4 definitions
  arm64: cputype: Add Neoverse-V3 definitions
  arm64: errata: Add workaround for Arm errata 3194386 and 3312417

 Documentation/arch/arm64/silicon-errata.rst |  4 ++
 arch/arm64/Kconfig                          | 42 +++++++++++++++++++++
 arch/arm64/include/asm/barrier.h            |  4 ++
 arch/arm64/include/asm/cpucaps.h            |  2 +
 arch/arm64/include/asm/cputype.h            |  4 ++
 arch/arm64/kernel/cpu_errata.c              | 19 ++++++++++
 arch/arm64/kernel/cpufeature.c              |  8 ++++
 arch/arm64/kernel/proton-pack.c             | 12 ++++++
 arch/arm64/tools/cpucaps                    |  1 +
 9 files changed, 96 insertions(+)

-- 
2.30.2




More information about the linux-arm-kernel mailing list