[PATCH v4.9.y 0/2] arm64: prevent boot-time crashes when detecting local features

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Marc reported that v4.9.y hung at boot time on his GICv3 system, since the
spectre backports.

This is because the errata detection logic tries to enable a static key in the
secondary bringup path, before the secondary CPU has configured its GICv3 CPU
interface, causing it to blow up when it tries to IPI the other CPUs. This
affects any local cpu feature detection in systems with heterogeneous CPUs.

Some prior rework upstream moved this out of the secondary bringup path, which
avoids the issue, so this series backports said rework.

Thanks,
Mark.

Mark Rutland (1):
  arm64/cpufeature: don't use mutex in bringup path

Suzuki K Poulose (1):
  arm64: Add hypervisor safe helper for checking constant capabilities

 arch/arm64/include/asm/cpufeature.h | 27 ++++++++++++++++++++-------
 arch/arm64/include/asm/kvm_host.h   | 10 +++++++---
 arch/arm64/include/asm/kvm_mmu.h    |  2 +-
 arch/arm64/include/asm/mmu.h        |  2 +-
 arch/arm64/kernel/cpufeature.c      | 28 ++++++++++++++++++++++++----
 arch/arm64/kernel/process.c         |  2 +-
 drivers/irqchip/irq-gic-v3.c        | 13 +------------
 7 files changed, 55 insertions(+), 29 deletions(-)

-- 
2.11.0




[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux