]> www.infradead.org Git - users/jedix/linux-maple.git/commit
KVM: arm64: nv: Handle TLBI VMALLS12E1{,IS} operations
authorMarc Zyngier <maz@kernel.org>
Fri, 14 Jun 2024 14:45:44 +0000 (15:45 +0100)
committerOliver Upton <oliver.upton@linux.dev>
Wed, 19 Jun 2024 08:14:37 +0000 (08:14 +0000)
commite6c9a3015ff21a76ef8ccab54568f5fe630e6e3a
tree2c4e05855fce63d5e6dd8c64aab7749605d03666
parent8e236efa4cd2df8b270784a33d7e334933789f1a
KVM: arm64: nv: Handle TLBI VMALLS12E1{,IS} operations

Emulating TLBI VMALLS12E1* results in tearing down all the shadow
S2 PTs that match the current VMID, since our shadow S2s are just
some form of SW-managed TLBs. That teardown itself results in a
full TLB invalidation for both S1 and S2.

This can result in over-invalidation if two vcpus use the same VMID
to tag private S2 PTs, but this is still correct from an architecture
perspective.

Co-developed-by: Jintack Lim <jintack.lim@linaro.org>
Co-developed-by: Christoffer Dall <christoffer.dall@arm.com>
Signed-off-by: Jintack Lim <jintack.lim@linaro.org>
Signed-off-by: Christoffer Dall <christoffer.dall@arm.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20240614144552.2773592-9-maz@kernel.org
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
arch/arm64/kvm/sys_regs.c