arm64/vmm: Enforce a data barrier before tlbi for non-VHE

Exception entry does not include an implicit, architectural data
barrier.

Reported by:	Ben Simner <ben.simner@cl.cam.ac.uk>
Reviewed by:	andrew
Fixes:		5577bb2f67 ("arm64/vmm: Support tlbi from VHE")
Differential Revision:	https://reviews.freebsd.org/D56855
This commit is contained in:
John Baldwin
2026-05-13 12:33:52 -04:00
parent 8766e2122a
commit 04987aa1d8
-4
View File
@@ -708,9 +708,7 @@ VMM_HYP_FUNC(s2_tlbi_range)(uint64_t vttbr, vm_offset_t sva, vm_offset_t eva,
uint64_t host_tcr;
#endif
#ifdef VMM_VHE
dsb(ishst);
#endif
#define TLBI_VA_SHIFT 12
#define TLBI_VA_MASK ((1ul << 44) - 1)
@@ -768,9 +766,7 @@ VMM_HYP_FUNC(s2_tlbi_all)(uint64_t vttbr)
{
uint64_t host_vttbr;
#ifdef VMM_VHE
dsb(ishst);
#endif
/* Switch to the guest vttbr */
/* TODO: Handle Cortex-A57/A72 erratum 131936 */