• Marc Zyngier's avatar
    arm/arm64: KVM: Implement Stage-2 page aging · 35307b9a
    Marc Zyngier authored
    Until now, KVM/arm didn't care much for page aging (who was swapping
    anyway?), and simply provided empty hooks to the core KVM code. With
    server-type systems now being available, things are quite different.
    
    This patch implements very simple support for page aging, by clearing
    the Access flag in the Stage-2 page tables. On access fault, the current
    fault handling will write the PTE or PMD again, putting the Access flag
    back on.
    
    It should be possible to implement a much faster handling for Access
    faults, but that's left for a later patch.
    
    With this in place, performance in VMs is degraded much more gracefully.
    Signed-off-by: default avatarMarc Zyngier <marc.zyngier@arm.com>
    Acked-by: default avatarChristoffer Dall <christoffer.dall@linaro.org>
    Signed-off-by: default avatarChristoffer Dall <christoffer.dall@linaro.org>
    35307b9a
esr.h 3.48 KB