[PATCH v7 23/23] [DO NOT MERGE] arm64: Cope with CPUs stuck in VHE mode

Jonathan Neuschäfer j.ne at posteo.net
Mon Feb 22 04:35:25 EST 2021


On Mon, Feb 08, 2021 at 09:57:32AM +0000, Marc Zyngier wrote:
> It seems that the CPU known as Apple M1 has the terrible habit
> of being stuck with HCR_EL2.E2H==1, in violation of the architecture.

Minor nitpick from the sideline: The M1 SoC has two kinds of CPU in it
(Icestorm and Firestorm), which makes "CPU known as Apple M1" a bit

In practicality it seems unlikely though, that Icestorm and Firestorm
act differently with regards to the code in this patch.

Best regards,
Jonathan Neuschäfer

> Try and work around this deplorable state of affairs by detecting
> the stuck bit early and short-circuit the nVHE dance. It is still
> unknown whether there are many more such nuggets to be found...
> Reported-by: Hector Martin <marcan at marcan.st>
> Signed-off-by: Marc Zyngier <maz at kernel.org>
> ---
>  arch/arm64/kernel/head.S     | 33 ++++++++++++++++++++++++++++++---
>  arch/arm64/kernel/hyp-stub.S | 28 ++++++++++++++++++++++++----
>  2 files changed, 54 insertions(+), 7 deletions(-)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20210222/4c3e2440/attachment.sig>

More information about the linux-arm-kernel mailing list