From: Shannon Zhao <shannon.zhao@xxxxxxxxxx> For KVM/ARM there are many fixes which have been applied upstream while not committed to stable kernels. Here we backport the important fixes to 3.18.y stable kernel. We have compile-tested each patch on arm/arm64/x86 to make sure the series are bisectable and have booted the resulting kernel on Fastmodel and started 2 VMs for arm/arm64, and have boot-tested on TC2 and Juno, and started a guest. These patches are applied on the top of 3.18.12. They can be fetched from following address: https://git.linaro.org/people/shannon.zhao/linux-stable.git linux-3.18.y Thanks, Shannon Ard Biesheuvel (2): kvm: add a memslot flag for incoherent memory regions arm, arm64: KVM: handle potential incoherency of readonly memslots Christoffer Dall (9): arm/arm64: KVM: Don't clear the VCPU_POWER_OFF flag arm/arm64: KVM: Correct KVM_ARM_VCPU_INIT power off option arm/arm64: KVM: Reset the HCR on each vcpu when resetting the vcpu arm/arm64: KVM: Turn off vcpus on PSCI shutdown/reboot arm/arm64: KVM: Introduce stage2_unmap_vm arm/arm64: KVM: Don't allow creating VCPUs after vgic_initialized arm/arm64: KVM: Initialize the vgic on-demand when injecting IRQs arm/arm64: KVM: Require in-kernel vgic for the arch timers arm/arm64: KVM: Keep elrsr/aisr in sync with software model Eric Auger (1): KVM: arm/arm64: vgic: vgic_init returns -ENODEV when no online vcpu Jan Kiszka (1): ARM: KVM: Fix size check in __coherent_cache_guest_page Laszlo Ersek (1): arm, arm64: KVM: allow forced dcache flush on page faults Marc Zyngier (6): arm64: KVM: Fix TLB invalidation by IPA/VMID arm64: KVM: Fix HCR setting for 32bit guests arm/arm64: KVM: Invalidate data cache on unmap arm/arm64: KVM: Use kernel mapping to perform invalidation on page fault arm64: KVM: Fix stage-2 PGD allocation to have per-page refcounting arm64: KVM: Do not use pgd_index to index stage-2 pgd Peter Maydell (1): arm/arm64: KVM: vgic: move reset initialization into vgic_init_maps() Shannon Zhao (1): arm/arm64: KVM: vgic: kick the specific vcpu instead of iterating through all Documentation/virtual/kvm/api.txt | 12 +- arch/arm/include/asm/kvm_emulate.h | 5 + arch/arm/include/asm/kvm_mmu.h | 87 +++++++++--- arch/arm/kvm/arm.c | 35 ++++- arch/arm/kvm/guest.c | 1 - arch/arm/kvm/mmu.c | 251 +++++++++++++++++++++++++++++------ arch/arm/kvm/psci.c | 18 +++ arch/arm64/include/asm/kvm_emulate.h | 7 + arch/arm64/include/asm/kvm_host.h | 1 + arch/arm64/include/asm/kvm_mmu.h | 81 +++++------ arch/arm64/kvm/guest.c | 1 - arch/arm64/kvm/hyp.S | 1 + arch/arm64/kvm/reset.c | 1 - include/kvm/arm_arch_timer.h | 10 +- include/kvm/arm_vgic.h | 5 +- include/linux/kvm_host.h | 1 + virt/kvm/arm/arch_timer.c | 30 +++-- virt/kvm/arm/vgic-v2.c | 8 ++ virt/kvm/arm/vgic-v3.c | 8 ++ virt/kvm/arm/vgic.c | 122 +++++++++-------- 20 files changed, 504 insertions(+), 181 deletions(-) -- 2.1.0 -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html