All of lore.kernel.org
 help / color / mirror / Atom feed
* [stable:PATCH v4.14.274 00/27] arm64: Mitigate spectre style branch history side channels
@ 2022-03-31 18:33 James Morse
  2022-03-31 18:33 ` [stable:PATCH v4.14.274 01/27] arm64: arch_timer: Add workaround for ARM erratum 1188873 James Morse
                   ` (27 more replies)
  0 siblings, 28 replies; 30+ messages in thread
From: James Morse @ 2022-03-31 18:33 UTC (permalink / raw)
  To: stable, linux-kernel; +Cc: james.morse, catalin.marinas

Hello!

This is the spectre-bhb backport for v4.14.
This comes with an A76 timer workaround. v4.14 doesn't have a compat
vdso, so doesn't need all the patches for that workaround.
In particular, it doesn't need Marc's series:
https://lore.kernel.org/linux-arm-kernel/20200715125614.3240269-1-maz@kernel.org/

I included the Kconfig change that restricts this to COMPAT, but not commit
0f80cad3124f ("arm64: Restrict ARM64_ERRATUM_1188873 mitigation to AArch32"),
which is an invasive performance optimisation that wasn't marked as
being for stable.


Thanks,

James

Anshuman Khandual (1):
  arm64: Add Cortex-X2 CPU part definition

Arnd Bergmann (1):
  arm64: arch_timer: avoid unused function warning

James Morse (19):
  arm64: entry.S: Add ventry overflow sanity checks
  arm64: entry: Make the trampoline cleanup optional
  arm64: entry: Free up another register on kpti's tramp_exit path
  arm64: entry: Move the trampoline data page before the text page
  arm64: entry: Allow tramp_alias to access symbols after the 4K
    boundary
  arm64: entry: Don't assume tramp_vectors is the start of the vectors
  arm64: entry: Move trampoline macros out of ifdef'd section
  arm64: entry: Make the kpti trampoline's kpti sequence optional
  arm64: entry: Allow the trampoline text to occupy multiple pages
  arm64: entry: Add non-kpti __bp_harden_el1_vectors for mitigations
  arm64: entry: Add vectors that have the bhb mitigation sequences
  arm64: entry: Add macro for reading symbol addresses from the
    trampoline
  arm64: Add percpu vectors for EL1
  arm64: proton-pack: Report Spectre-BHB vulnerabilities as part of
    Spectre-v2
  KVM: arm64: Add templates for BHB mitigation sequences
  arm64: Mitigate spectre style branch history side channels
  KVM: arm64: Allow SMCCC_ARCH_WORKAROUND_3 to be discovered and
    migrated
  arm64: add ID_AA64ISAR2_EL1 sys register
  arm64: Use the clearbhb instruction in mitigations

Marc Zyngier (4):
  arm64: arch_timer: Add workaround for ARM erratum 1188873
  arm64: Add silicon-errata.txt entry for ARM erratum 1188873
  arm64: Make ARM64_ERRATUM_1188873 depend on COMPAT
  arm64: Add part number for Neoverse N1

Rob Herring (1):
  arm64: Add part number for Arm Cortex-A77

Suzuki K Poulose (1):
  arm64: Add Neoverse-N2, Cortex-A710 CPU part definition

 Documentation/arm64/silicon-errata.txt |   1 +
 arch/arm/include/asm/kvm_host.h        |   6 +
 arch/arm64/Kconfig                     |  24 ++
 arch/arm64/include/asm/assembler.h     |  34 +++
 arch/arm64/include/asm/cpu.h           |   1 +
 arch/arm64/include/asm/cpucaps.h       |   4 +-
 arch/arm64/include/asm/cpufeature.h    |  39 +++
 arch/arm64/include/asm/cputype.h       |  20 ++
 arch/arm64/include/asm/fixmap.h        |   6 +-
 arch/arm64/include/asm/kvm_host.h      |   5 +
 arch/arm64/include/asm/kvm_mmu.h       |   2 +-
 arch/arm64/include/asm/mmu.h           |   8 +-
 arch/arm64/include/asm/sections.h      |   6 +
 arch/arm64/include/asm/sysreg.h        |   5 +
 arch/arm64/include/asm/vectors.h       |  74 +++++
 arch/arm64/kernel/bpi.S                |  55 ++++
 arch/arm64/kernel/cpu_errata.c         | 395 ++++++++++++++++++++++++-
 arch/arm64/kernel/cpufeature.c         |  21 ++
 arch/arm64/kernel/cpuinfo.c            |   1 +
 arch/arm64/kernel/entry.S              | 198 ++++++++++---
 arch/arm64/kernel/vmlinux.lds.S        |   2 +-
 arch/arm64/kvm/hyp/hyp-entry.S         |   4 +
 arch/arm64/kvm/hyp/switch.c            |   9 +-
 arch/arm64/mm/mmu.c                    |  11 +-
 drivers/clocksource/arm_arch_timer.c   |  15 +
 include/linux/arm-smccc.h              |   7 +
 virt/kvm/arm/psci.c                    |  12 +
 27 files changed, 908 insertions(+), 57 deletions(-)
 create mode 100644 arch/arm64/include/asm/vectors.h

-- 
2.30.2


^ permalink raw reply	[flat|nested] 30+ messages in thread

end of thread, other threads:[~2022-03-31 19:05 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-03-31 18:33 [stable:PATCH v4.14.274 00/27] arm64: Mitigate spectre style branch history side channels James Morse
2022-03-31 18:33 ` [stable:PATCH v4.14.274 01/27] arm64: arch_timer: Add workaround for ARM erratum 1188873 James Morse
2022-03-31 18:33 ` [stable:PATCH v4.14.274 02/27] arm64: arch_timer: avoid unused function warning James Morse
2022-03-31 18:33 ` [stable:PATCH v4.14.274 03/27] arm64: Add silicon-errata.txt entry for ARM erratum 1188873 James Morse
2022-03-31 18:33 ` [stable:PATCH v4.14.274 04/27] arm64: Make ARM64_ERRATUM_1188873 depend on COMPAT James Morse
2022-03-31 18:33 ` [stable:PATCH v4.14.274 05/27] arm64: Add part number for Neoverse N1 James Morse
2022-03-31 18:33 ` [stable:PATCH v4.14.274 06/27] arm64: Add part number for Arm Cortex-A77 James Morse
2022-03-31 18:33 ` [stable:PATCH v4.14.274 07/27] arm64: Add Neoverse-N2, Cortex-A710 CPU part definition James Morse
2022-03-31 18:33 ` [stable:PATCH v4.14.274 08/27] arm64: Add Cortex-X2 " James Morse
2022-03-31 19:02   ` Patch "arm64: Add Cortex-X2 CPU part definition" has been added to the 4.14-stable tree gregkh
2022-03-31 18:33 ` [stable:PATCH v4.14.274 09/27] arm64: entry.S: Add ventry overflow sanity checks James Morse
2022-03-31 18:33 ` [stable:PATCH v4.14.274 10/27] arm64: entry: Make the trampoline cleanup optional James Morse
2022-03-31 18:33 ` [stable:PATCH v4.14.274 11/27] arm64: entry: Free up another register on kpti's tramp_exit path James Morse
2022-03-31 18:33 ` [stable:PATCH v4.14.274 12/27] arm64: entry: Move the trampoline data page before the text page James Morse
2022-03-31 18:33 ` [stable:PATCH v4.14.274 13/27] arm64: entry: Allow tramp_alias to access symbols after the 4K boundary James Morse
2022-03-31 18:33 ` [stable:PATCH v4.14.274 14/27] arm64: entry: Don't assume tramp_vectors is the start of the vectors James Morse
2022-03-31 18:33 ` [stable:PATCH v4.14.274 15/27] arm64: entry: Move trampoline macros out of ifdef'd section James Morse
2022-03-31 18:33 ` [stable:PATCH v4.14.274 16/27] arm64: entry: Make the kpti trampoline's kpti sequence optional James Morse
2022-03-31 18:33 ` [stable:PATCH v4.14.274 17/27] arm64: entry: Allow the trampoline text to occupy multiple pages James Morse
2022-03-31 18:33 ` [stable:PATCH v4.14.274 18/27] arm64: entry: Add non-kpti __bp_harden_el1_vectors for mitigations James Morse
2022-03-31 18:33 ` [stable:PATCH v4.14.274 19/27] arm64: entry: Add vectors that have the bhb mitigation sequences James Morse
2022-03-31 18:33 ` [stable:PATCH v4.14.274 20/27] arm64: entry: Add macro for reading symbol addresses from the trampoline James Morse
2022-03-31 18:33 ` [stable:PATCH v4.14.274 21/27] arm64: Add percpu vectors for EL1 James Morse
2022-03-31 18:33 ` [stable:PATCH v4.14.274 22/27] arm64: proton-pack: Report Spectre-BHB vulnerabilities as part of Spectre-v2 James Morse
2022-03-31 18:33 ` [stable:PATCH v4.14.274 23/27] KVM: arm64: Add templates for BHB mitigation sequences James Morse
2022-03-31 18:33 ` [stable:PATCH v4.14.274 24/27] arm64: Mitigate spectre style branch history side channels James Morse
2022-03-31 18:33 ` [stable:PATCH v4.14.274 25/27] KVM: arm64: Allow SMCCC_ARCH_WORKAROUND_3 to be discovered and migrated James Morse
2022-03-31 18:33 ` [stable:PATCH v4.14.274 26/27] arm64: add ID_AA64ISAR2_EL1 sys register James Morse
2022-03-31 18:34 ` [stable:PATCH v4.14.274 27/27] arm64: Use the clearbhb instruction in mitigations James Morse
2022-03-31 19:03 ` [stable:PATCH v4.14.274 00/27] arm64: Mitigate spectre style branch history side channels Greg KH

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.