[PATCH v2 3/3] arm64: Allow nVHE impaired CPUs to boot without CONFIG_ARM64_VHE
Marc Zyngier
maz at kernel.org
Thu Apr 8 11:31:42 BST 2021
On 2021-04-07 22:18, Will Deacon wrote:
> On Tue, Mar 30, 2021 at 06:39:47PM +0100, Marc Zyngier wrote:
>> CPUs stuck in VHE mode need some additional care if the kernel
>> is compiled without CONFIG_ARM64_VHE.
>>
>> Treat this case as another version of a mismatched boot, and
>> prevent KVM from being initialised. The machine will boot in
>> some bizarre state, using TPIDR_EL1 instead of TPIDR_EL2, but
>> otherwise be functional.
>>
>> Signed-off-by: Marc Zyngier <maz at kernel.org>
>> ---
>> arch/arm64/include/asm/virt.h | 18 +++++++++++++-----
>> arch/arm64/kvm/va_layout.c | 9 +++++++++
>> 2 files changed, 22 insertions(+), 5 deletions(-)
>
> Hmm, I think we definitely need _something_ here, but it's a bit
> annoying
> to put ourselves into this weird state just for the sake of one stupid
> machine.
Which is why I'm not keen at all on this patch, and I'm happy to see
the machine die a painful death. We really can't be blamed for
terminally
buggy HW, which the M1 obviously is.
> What if we dropped CONFIG_ARM64_VHE and made the VHE code unconditional
> instead? Is there a good reason to allow it to be disabled nowadays?
What do we do for the other camp, aka people really wanting to run nVHE
without any command line parameter? I can't see why you'd want to do
that, but hey, that's only me.
I'd be quite happy to see CONFIG_ARM64_VHE go though. Let me know if you
want a patch doing that instead.
Thanks,
M.
--
Jazz is not dead. It just smells funny...
More information about the linux-arm-kernel
mailing list