sst-linux/arch
Mark Rutland fd7c4608ca arm64: errata: Expand speculative SSBS workaround once more
[ Upstream commit 081eb7932c2b244f63317a982c5e3990e2c7fbdd ]

A number of Arm Ltd CPUs 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.

We worked around this for a number of CPUs in commits:

* 7187bb7d0b5c7dfa ("arm64: errata: Add workaround for Arm errata 3194386 and 3312417")
* 75b3c43eab594bfb ("arm64: errata: Expand speculative SSBS workaround")
* 145502cac7ea70b5 ("arm64: errata: Expand speculative SSBS workaround (again)")

Since then, a (hopefully final) batch of updates have been published,
with two more affected CPUs. For the affected CPUs the existing
mitigation is sufficient, as described in their respective Software
Developer Errata Notice (SDEN) documents:

* Cortex-A715 (MP148) SDEN v15.0, erratum 3456084
  https://developer.arm.com/documentation/SDEN-2148827/1500/

* Neoverse-N3 (MP195) SDEN v5.0, erratum 3456111
  https://developer.arm.com/documentation/SDEN-3050973/0500/

Enable the existing mitigation by adding the relevant MIDRs to
erratum_spec_ssbs_list, and update silicon-errata.rst and the
Kconfig text accordingly.

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Cc: James Morse <james.morse@arm.com>
Cc: Will Deacon <will@kernel.org>
Link: https://lore.kernel.org/r/20240930111705.3352047-3-mark.rutland@arm.com
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
[ Mark: fix conflict in silicon-errata.rst, handle move ]
Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-10-17 15:22:05 +02:00
..
alpha rtc: Add support for configuring the UIP timeout for RTC reads 2024-01-31 16:17:01 -08:00
arc ARC: [plat-hsdk]: Remove misplaced interrupt-cells property 2024-05-02 16:29:23 +02:00
arm crypto: simd - Do not call crypto_alloc_tfm during registration 2024-10-17 15:21:39 +02:00
arm64 arm64: errata: Expand speculative SSBS workaround once more 2024-10-17 15:22:05 +02:00
csky csky, hexagon: fix broken sys_sync_file_range 2024-07-05 09:31:57 +02:00
hexagon hexagon: fix fadvise64_64 calling conventions 2024-07-05 09:31:57 +02:00
ia64
loongarch LoongArch: Define ARCH_IRQ_INIT_FLAGS as IRQ_NOPROBE 2024-09-30 16:23:47 +02:00
m68k m68k: Fix kernel_clone_args.flags in m68k_clone() 2024-10-17 15:20:47 +02:00
microblaze microblaze: don't treat zero reserved memory regions as error 2024-09-30 16:23:47 +02:00
mips MIPS: cevt-r4k: Don't call get_c0_compare_int if timer irq is installed 2024-09-12 11:10:25 +02:00
nios2
openrisc openrisc: Call setup_memory() earlier in the init sequence 2024-08-29 17:30:39 +02:00
parisc parisc: Fix 64-bit userspace syscall path 2024-10-17 15:21:55 +02:00
powerpc powerpc/vdso: Fix VDSO data access when running in a non-root time namespace 2024-10-17 15:21:49 +02:00
riscv riscv: define ILLEGAL_POINTER_VALUE for 64bit 2024-10-17 15:21:57 +02:00
s390 s390/vmlinux.lds.S: Move ro_after_init section behind rodata section 2024-09-12 11:10:24 +02:00
sh sh: rework sync_file_range ABI 2024-07-05 09:31:57 +02:00
sparc sparc64: Fix incorrect function signature and add prototype for prom_cif_init 2024-08-03 08:49:16 +02:00
um um: line: always fill *error_out in setup_one_line() 2024-09-12 11:10:23 +02:00
x86 perf,x86: avoid missing caller address in stack traces captured in uprobe 2024-10-17 15:21:46 +02:00
xtensa xtensa: fix MAKE_PC_FROM_RA second argument 2024-06-21 14:35:39 +02:00
.gitignore
Kconfig Revert "mm: mmap: allow for the maximum number of bits for randomizing mmap_base by default" 2024-06-27 13:46:24 +02:00