arm64: errata: Add Cortex-A510 speculative unprivileged load workaround
authorRob Herring <robh@kernel.org>
Wed, 10 Jan 2024 17:29:21 +0000 (11:29 -0600)
committerWill Deacon <will@kernel.org>
Fri, 12 Jan 2024 12:51:33 +0000 (12:51 +0000)
commitf827bcdafa2a2ac21c91e47f587e8d0c76195409
tree70b09a59cf2033c4a23e3e1e75f6327f616b3266
parent546b7cde9b1dd36089649101b75266564600ffe5
arm64: errata: Add Cortex-A510 speculative unprivileged load workaround

Implement the workaround for ARM Cortex-A510 erratum 3117295. On an
affected Cortex-A510 core, a speculatively executed unprivileged load
might leak data from a privileged load via a cache side channel. The
issue only exists for loads within a translation regime with the same
translation (e.g. same ASID and VMID). Therefore, the issue only affects
the return to EL0.

The erratum and workaround are the same as ARM Cortex-A520 erratum
2966298, so reuse the existing workaround.

Cc: stable@vger.kernel.org
Signed-off-by: Rob Herring <robh@kernel.org>
Reviewed-by: Mark Rutland <mark.rutland@arm.com>
Link: https://lore.kernel.org/r/20240110-arm-errata-a510-v1-2-d02bc51aeeee@kernel.org
Signed-off-by: Will Deacon <will@kernel.org>
Documentation/arch/arm64/silicon-errata.rst
arch/arm64/Kconfig
arch/arm64/kernel/cpu_errata.c