[PATCH v3 0/3] arm64: Dealing with VHE-only CPUs
Marc Zyngier
maz at kernel.org
Thu Apr 8 14:10:07 BST 2021
This short series is a rewrite of [0] after some reviewing from
Will. It simplifies the esoteric "stay at EL2" path, and move the
feature override code where it actually belongs, allowing us to tell
the user that no, nVHE isn't a thing on these system.
The last patch rids us of CONFIG_ARM64_VHE, which has been the default
for longer than I can remember.
This allows the infamous M1 to boot (tested on a M1 Mini).
Note: the last patch will conflict with the KVM SVE series, so I'd
like to take that patch (or the series) via the KVM tree to avoid
extra moaning^Wfriction.
* From v2 [2]:
- Fixed typos and spacing issues
- Dropped the mVHE on VHE patch
- Added a patch removing the CONFIG_ARM64_VHE option altogether
- Collected Ack from Will
* From v1 [1]:
- added a comment describing the mapping various states
the override mask/val tuple can describe
- added a patch to prevent KVM from initialising, treating
the lack of CONFIG_ARM64_VHE as a mismatched boot
[0] https://lore.kernel.org/r/20210304213902.83903-2-marcan@marcan.st
[1] https://lore.kernel.org/r/20210325124721.941182-1-maz@kernel.org
[2] https://lore.kernel.org/r/20210330173947.999859-1-maz@kernel.org
Marc Zyngier (3):
arm64: cpufeature: Allow early filtering of feature override
arm64: Cope with CPUs stuck in VHE mode
arm64: Get rid of CONFIG_ARM64_VHE
.../admin-guide/kernel-parameters.txt | 3 +-
arch/arm64/Kconfig | 20 ----------
arch/arm64/include/asm/cpufeature.h | 17 ++++++++
arch/arm64/kernel/cpufeature.c | 10 +++--
arch/arm64/kernel/head.S | 39 +++++++++++++++++--
arch/arm64/kernel/hyp-stub.S | 10 ++---
arch/arm64/kernel/idreg-override.c | 26 ++++++++++++-
7 files changed, 89 insertions(+), 36 deletions(-)
--
2.29.2
More information about the linux-arm-kernel
mailing list