OpenCloudOS-Kernel/arch/arm64
Marc Zyngier 35307b9a5f arm/arm64: KVM: Implement Stage-2 page aging
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: Marc Zyngier <marc.zyngier@arm.com>
Acked-by: Christoffer Dall <christoffer.dall@linaro.org>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
2015-03-12 22:34:43 +01:00
..
boot ARM: SoC 64-bit changes and additions 2015-02-17 09:47:46 -08:00
configs ARM: SoC 64-bit changes and additions 2015-02-17 09:47:46 -08:00
crypto Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 2014-12-13 13:33:26 -08:00
include arm/arm64: KVM: Implement Stage-2 page aging 2015-03-12 22:34:43 +01:00
kernel mm: vmalloc: pass additional vm_flags to __vmalloc_node_range() 2015-02-13 21:21:42 -08:00
kvm KVM: arm/arm64: add irqfd support 2015-03-12 15:15:34 +01:00
lib arm64: __clear_user: handle exceptions on strb 2014-11-13 15:21:26 +00:00
mm Merge branch 'akpm' (patches from Andrew) 2015-02-11 18:23:28 -08:00
net arm64: bpf: lift restriction on last instruction 2014-12-03 18:04:09 +00:00
xen arm: xen: implement multicall hypercall support. 2014-04-24 13:09:46 +01:00
Kconfig ARM: SoC 64-bit changes and additions 2015-02-17 09:47:46 -08:00
Kconfig.debug arm64: add better page protections to arm64 2015-01-22 14:54:29 +00:00
Makefile arm64 updates for 3.20: 2015-02-11 18:03:54 -08:00