So far, KVM/arm doesn't implement any support for page aging, leading to rather bad performance when the system is swapping. This short series implements the required hooks and fault handling to deal with pages being marked old/young. The three patches are fairly straightforward: - First patch changes the range iterator to be able to return a value - Second patch implements the actual page aging (clearing the AF bit in the page tables, and relying on the normal faulting code to set the bit again). - Last patch optimizes the access fault path by only doing the minimum to satisfy the fault. The end result is a system that behaves visibly better under load, as VM pages don't get evicted that easily. Based on 3.19-rc5, tested on Seattle and X-Gene. Also at git://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms.git kvm-arm64/mm-fixes-3.19 Marc Zyngier (3): arm/arm64: KVM: Allow handle_hva_to_gpa to return a value arm/arm64: KVM: Implement Stage-2 page aging arm/arm64: KVM: Optimize handling of Access Flag faults arch/arm/include/asm/kvm_host.h | 13 +--- arch/arm/kvm/mmu.c | 128 +++++++++++++++++++++++++++++++++++--- arch/arm/kvm/trace.h | 48 ++++++++++++++ arch/arm64/include/asm/kvm_arm.h | 1 + arch/arm64/include/asm/kvm_host.h | 13 +--- 5 files changed, 171 insertions(+), 32 deletions(-) -- 2.1.4 -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html