This small series fixes a number of issues that Christoffer and I have been trying to nail down for a while, having to do with the host dying under load (swapping), and also with the way we deal with caches in general (and with set/way operation in particular): - The first patch, courtesy of Steve Capper, fixes a long standing buglet in one of the MMU notifiers. - The second one changes the way we handle cache ops by set/way, basically turning them into VA ops for the whole memory. This allows platforms with system caches to boot a 32bit zImage, for example. - The third one fixes a corner case that could happen if the guest used an uncached mapping (or had its caches off) while the host was swapping it out (and using a cache-coherent IO subsystem). - Finally, the last one fixes this stability issue when the host was swapping, by using a kernel mapping for cache maintenance instead of the userspace one. With these patches (and both the TLB invalidation fix I posted before Xmas and the HCR fix posted yesterday), the APM platform seems much more robust than it was. Fingers crossed. Based on 3.19-rc3, tested on Juno, X-Gene and Cubietruck. 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: Use set/way op trapping to track the state of the caches arm/arm64: KVM: Flush caches to memory on unmap arm/arm64: KVM: use kernel mapping to perform invalidation on page fault Steve Capper (1): mm: Correct ordering of *_clear_flush_young_notify arch/arm/include/asm/kvm_host.h | 3 -- arch/arm/include/asm/kvm_mmu.h | 68 +++++++++++++++++++++---- arch/arm/kvm/arm.c | 10 ---- arch/arm/kvm/coproc.c | 90 +++++++++++++++++++++------------ arch/arm/kvm/mmu.c | 58 +++++++++++++++------- arch/arm64/include/asm/kvm_host.h | 3 -- arch/arm64/include/asm/kvm_mmu.h | 31 ++++++++++-- arch/arm64/kvm/sys_regs.c | 102 ++++++++++++++++++++++---------------- include/linux/mmu_notifier.h | 8 +-- 9 files changed, 244 insertions(+), 129 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