[PATCH 3/3] arm64: Add missing ISB after invalidating TLB in enter_vhe
Mark Rutland
mark.rutland at arm.com
Wed Feb 24 06:12:54 EST 2021
On Wed, Feb 24, 2021 at 09:37:38AM +0000, Marc Zyngier wrote:
> Although there has been a bit of back and forth on the subject,
> it appears that invalidating TLBs requires an ISB instruction
> after the TLBI/DSB sequence, as documented in d0b7a302d58a
> ("Revert "arm64: Remove unnecessary ISBs from set_{pte,pmd,pud}"").
>
> Add the missing ISB in enter_vhe(), just in case.
>
> Fixes: f359182291c7 ("arm64: Provide an 'upgrade to VHE' stub hypercall")
> Suggested-by: Will Deacon <will at kernel.org>
> Signed-off-by: Marc Zyngier <maz at kernel.org>
Same comment as for patch 2; with the commit message similarly updated:
Acked-by: Mark Rutland <mark.rutland at arm.com>
Thanks,
Mark.
> ---
> arch/arm64/kernel/hyp-stub.S | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/arch/arm64/kernel/hyp-stub.S b/arch/arm64/kernel/hyp-stub.S
> index ae56787ea7c1..5eccbd62fec8 100644
> --- a/arch/arm64/kernel/hyp-stub.S
> +++ b/arch/arm64/kernel/hyp-stub.S
> @@ -152,6 +152,7 @@ SYM_CODE_START_LOCAL(enter_vhe)
> // Invalidate TLBs before enabling the MMU
> tlbi vmalle1
> dsb nsh
> + isb
>
> // Enable the EL2 S1 MMU, as set up from EL1
> mrs_s x0, SYS_SCTLR_EL12
> --
> 2.29.2
>
More information about the linux-arm-kernel
mailing list