arm/arm64: KVM: Optimize handling of Access Flag faults
authorMarc Zyngier <marc.zyngier@arm.com>
Thu, 12 Mar 2015 18:16:52 +0000 (18:16 +0000)
committerChristoffer Dall <christoffer.dall@linaro.org>
Thu, 12 Mar 2015 21:34:49 +0000 (22:34 +0100)
commitaeda9130c38e2e0e77c1aaa65292c2f5a81107a8
tree1c217726f4716686217af22f9f1997c7cc9860a1
parent35307b9a5f7ebcc8d8db41c73b69c131b48ace2b
arm/arm64: KVM: Optimize handling of Access Flag faults

Now that we have page aging in Stage-2, it becomes obvious that
we're doing way too much work handling the fault.

The page is not going anywhere (it is still mapped), the page
tables are already allocated, and all we want is to flip a bit
in the PMD or PTE. Also, we can avoid any form of TLB invalidation,
since a page with the AF bit off is not allowed to be cached.

An obvious solution is to have a separate handler for FSC_ACCESS,
where we pride ourselves to only do the very minimum amount of
work.

Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Acked-by: Christoffer Dall <christoffer.dall@linaro.org>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
arch/arm/kvm/mmu.c
arch/arm/kvm/trace.h