[PATCH 3/5] arm64: Detect disabled HVC early

Rafał Miłecki zajec5 at gmail.com
Thu Aug 12 12:47:18 PDT 2021


On 12.08.2021 21:02, Marc Zyngier wrote:
> Having HVC disabled from EL3 while the kernel is entered at EL2
> is a complete nightmare.
> 
> We end-up taking an UNDEF at the worse possible moment (checking
> for VHE) and even if we didn't, having KVM enabled would signify
> the premature end of the kernel.
> 
> Instead, try and detect this stupid case by issuing a HVC
> for HVC_RESET_VECTORS, which does nothing when the stubs
> are live. If we get HVC_STUB_ERR back, that's because the
> UNDEF handler has kicked in.
> 
> In this situation, close your eyes, block your nose, and gracefully
> pretend we have booted at EL1.
> 
> Reported-by: Rafał Miłecki <zajec5 at gmail.com>
> Signed-off-by: Marc Zyngier <maz at kernel.org>

This does the trick.

Tested-by: Rafał Miłecki <rafal at milecki.pl>



More information about the linux-arm-kernel mailing list