Linus, The following changes since commit 5e1b59abef69e405eabfbe0ad09ad6b6e5303c7d: Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm (2016-04-13 08:53:26 -0700) are available in the git repository at: git://git.kernel.org/pub/scm/virt/kvm/kvm.git tags/for-linus for you to fetch changes up to 9842df62004f366b9fed2423e24df10542ee0dc5: KVM: MTRR: remove MSR 0x2f8 (2016-05-18 18:04:32 +0200) ---------------------------------------------------------------- Small release overall. - x86: miscellaneous fixes, AVIC support (local APIC virtualization, AMD version) - s390: polling for interrupts after a VCPU goes to halted state is now enabled for s390; use hardware provided information about facility bits that do not need any hypervisor activity, and other fixes for cpu models and facilities; improve perf output; floating interrupt controller improvements. - MIPS: miscellaneous fixes - PPC: bugfixes only - ARM: 16K page size support, generic firmware probing layer for timer and GIC Christoffer Dall (KVM-ARM maintainer) says: "There are a few changes in this pull request touching things outside KVM, but they should all carry the necessary acks and it made the merge process much easier to do it this way." though actually the irqchip maintainers' acks didn't make it into the patches. Marc Zyngier, who is both irqchip and KVM-ARM maintainer, later acked at http://mid.gmane.org/573351D1.4060303@xxxxxxx "more formally and for documentation purposes". ---------------------------------------------------------------- ... Also, that caused conflicts with irqchip patches from the tip tree. They aren't particularly nasty, but I've placed my resolution anyway at refs/heads/merge-20160519 in the git://git.kernel.org/pub/scm/virt/kvm/kvm.git repository. Thanks, Paolo Alex Williamson (2): irqbypass: Disallow NULL token kvm: Conditionally register IRQ bypass consumer Alexander Yarygin (3): KVM: s390: Enable all facility bits that are known good for passthrough s390/sclp: Add hmfai field KVM: s390: Populate mask of non-hypervisor managed facility bits Alexey Kardashevskiy (1): KVM: PPC: Fix debug macros Andy Honig (1): KVM: MTRR: remove MSR 0x2f8 Borislav Petkov (1): x86/kvm: Do not use BIT() in user-exported header Bruce Rogers (1): KVM: x86: fix ordering of cr0 initialization code in vmx_cpu_reset Catalin Marinas (1): kvm: arm64: Enable hardware updates of the Access Flag for Stage 2 page tables Christian Borntraeger (4): KVM: s390/perf: provide additional sigp events KVM: halt_polling: provide a way to qualify wakeups during poll KVM: s390: set halt polling to 80 microseconds KVM: shrink halt polling even more for invalid wakeups David Hildenbrand (7): KVM: s390: cmma: don't check entry content KVM: s390: support NQ only if the facility is enabled for the guest KVM: s390: enable PFMFI only if guest has EDAT1 KVM: s390: enable SRS only if enabled for the guest KVM: s390: cleanup cpuid handling KVM: s390: force ibc into valid range KVM: s390: document KVM_CAP_S390_RI Eric Engestrom (1): Documentation: virtual: fix spelling mistake Gavin Shan (1): KVM: PPC: Book3S HV: Fix build error in book3s_hv.c Greg Kurz (2): KVM: remove NULL return path for vcpu ids >= KVM_MAX_VCPUS kvm: introduce KVM_MAX_VCPU_ID Halil Pasic (3): KVM: s390: implement has_attr for FLIC KVM: s390: document FLIC behavior on unsupported KVM: s390: add clear I/O irq operation for FLIC James Hogan (5): MIPS: KVM: Fix timer IRQ race when freezing timer MIPS: KVM: Fix timer IRQ race when writing CP0_Compare MIPS: KVM: Fix preemptable kvm_mips_get_*_asid() calls MIPS: KVM: Fix preemption warning reading FPU capability MIPS: KVM: Add missing disable FPU hazard barriers Julien Grall (10): clocksource: arm_arch_timer: Gather KVM specific information in a structure clocksource: arm_arch_timer: Extend arch_timer_kvm_info to get the virtual IRQ irqchip/gic-v2: Gather ACPI specific data in a single structure irqchip/gic-v2: Parse and export virtual GIC information irqchip/gic-v3: Prefix all pr_* messages by "GICv3: " irqchip/gic-v3: Gather all ACPI specific data in a single structure irqchip/gic-v3: Parse and export virtual GIC information KVM: arm/arm64: arch_timer: Rely on the arch timer to parse the firmware tables KVM: arm/arm64: vgic: Rely on the GIC driver to parse the firmware tables clocksource: arm_arch_timer: Remove arch_timer_get_timecounter Laurent Vivier (1): KVM: PPC: Book3S PR: Manage single-step mode Liang Chen (1): KVM: x86: optimize steal time calculation Marc Zyngier (1): arm/arm64: KVM: Enforce Break-Before-Make on Stage-2 page tables Paolo Bonzini (5): KVM: add missing memory barrier in kvm_{make,check}_request Merge tag 'kvm-s390-next-4.7-2' of git://git.kernel.org/.../kvms390/linux into HEAD Merge tag 'kvm-arm-for-4.7' of git://git.kernel.org/.../kvmarm/kvmarm into HEAD Merge branch 'kvm-ppc-next' of git://git.kernel.org/.../paulus/powerpc into HEAD KVM: x86: make hwapic_isr_update and hwapic_irr_update look the same Paul Mackerras (2): KVM: PPC: Fix emulated MMIO sign-extension KVM: PPC: Book3S HV: Re-enable XICS fast path for irqfd-generated interrupts Radim Krčmář (2): Merge tag 'kvms390-20160420' of git://git.kernel.org/.../kvms390/linux into next KVM: split kvm_vcpu_wake_up from kvm_vcpu_kick Suravee Suthikulpanit (12): KVM: x86: Misc LAPIC changes to expose helper functions KVM: x86: Rename kvm_apic_get_reg to kvm_lapic_get_reg KVM: x86: Introducing kvm_x86_ops VM init/destroy hooks KVM: x86: Introducing kvm_x86_ops VCPU blocking/unblocking hooks svm: Introduce new AVIC VMCB registers KVM: x86: Detect and Initialize AVIC support svm: Add interrupt injection via AVIC svm: Add VMEXIT handlers for AVIC KVM: x86: Introducing kvm_x86_ops.apicv_post_state_restore svm: Do not expose x2APIC when enable AVIC svm: Do not intercept CR8 when enable AVIC svm: Manage vcpu load/unload when enable AVIC Suzuki K Poulose (17): arm64: Reuse TCR field definitions for EL1 and EL2 arm64: Cleanup VTCR_EL2 and VTTBR field values kvm arm: Move fake PGD handling to arch specific files arm64: Introduce pmd_thp_or_huge kvm-arm: Replace kvm_pmd_huge with pmd_thp_or_huge kvm-arm: Remove kvm_pud_huge() kvm-arm: arm32: Introduce stage2 page table helpers kvm-arm: arm: Introduce hyp page table empty checks kvm-arm: arm64: Introduce stage2 page table helpers kvm-arm: arm64: Introduce hyp page table empty checks kvm-arm: Use explicit stage2 helper routines kvm-arm: Add explicit hyp page table modifiers kvm-arm: Add stage2 page table modifiers kvm-arm: Cleanup kvm_* wrappers kvm: arm64: Get rid of fake page table levels kvm-arm: Cleanup stage2 pgd handling arm64: kvm: Add support for 16K pages Wanpeng Li (1): kvm: robustify steal time record Xiao Guangrong (1): KVM: MMU: skip obsolete sp in for_each_gfn_*() Documentation/virtual/kvm/api.txt | 18 +- Documentation/virtual/kvm/devices/s390_flic.txt | 14 +- arch/arm/include/asm/kvm_host.h | 2 + arch/arm/include/asm/kvm_mmu.h | 43 +- arch/arm/include/asm/stage2_pgtable.h | 61 +++ arch/arm/kvm/arm.c | 2 +- arch/arm/kvm/mmu.c | 408 ++++++++------- arch/arm64/include/asm/kvm_arm.h | 85 +-- arch/arm64/include/asm/kvm_host.h | 2 + arch/arm64/include/asm/kvm_mmu.h | 111 +--- arch/arm64/include/asm/pgtable-hwdef.h | 80 ++- arch/arm64/include/asm/pgtable.h | 15 +- arch/arm64/include/asm/stage2_pgtable-nopmd.h | 42 ++ arch/arm64/include/asm/stage2_pgtable-nopud.h | 39 ++ arch/arm64/include/asm/stage2_pgtable.h | 142 +++++ arch/arm64/kvm/Kconfig | 1 - arch/arm64/kvm/hyp/s2-setup.c | 8 + arch/mips/include/asm/kvm_host.h | 4 +- arch/mips/kvm/emulate.c | 89 ++-- arch/mips/kvm/mips.c | 9 +- arch/mips/kvm/tlb.c | 26 +- arch/mips/kvm/trap_emul.c | 2 +- arch/powerpc/include/asm/kvm_host.h | 5 + arch/powerpc/kvm/book3s.c | 1 + arch/powerpc/kvm/book3s_hv.c | 1 + arch/powerpc/kvm/book3s_pr.c | 32 +- arch/powerpc/kvm/book3s_xics.c | 29 +- arch/powerpc/kvm/book3s_xics.h | 1 + arch/powerpc/kvm/booke.c | 1 + arch/powerpc/kvm/powerpc.c | 22 +- arch/s390/include/asm/kvm_host.h | 11 +- arch/s390/include/asm/sclp.h | 1 + arch/s390/include/asm/sigp.h | 1 + arch/s390/include/uapi/asm/kvm.h | 1 + arch/s390/include/uapi/asm/sie.h | 7 +- arch/s390/kvm/Kconfig | 1 + arch/s390/kvm/interrupt.c | 47 ++ arch/s390/kvm/kvm-s390.c | 61 ++- arch/s390/kvm/priv.c | 21 +- arch/s390/kvm/sigp.c | 6 + arch/x86/include/asm/kvm_host.h | 32 +- arch/x86/include/asm/svm.h | 12 +- arch/x86/include/uapi/asm/kvm.h | 6 +- arch/x86/include/uapi/asm/svm.h | 9 +- arch/x86/kvm/ioapic.c | 2 +- arch/x86/kvm/irq_comm.c | 3 - arch/x86/kvm/lapic.c | 193 +++---- arch/x86/kvm/lapic.h | 38 +- arch/x86/kvm/mmu.c | 28 +- arch/x86/kvm/mtrr.c | 2 - arch/x86/kvm/svm.c | 670 +++++++++++++++++++++++- arch/x86/kvm/trace.h | 57 ++ arch/x86/kvm/vmx.c | 12 +- arch/x86/kvm/x86.c | 64 ++- drivers/clocksource/arm_arch_timer.c | 11 +- drivers/irqchip/irq-gic-common.c | 13 + drivers/irqchip/irq-gic-common.h | 3 + drivers/irqchip/irq-gic-v3.c | 176 ++++++- drivers/irqchip/irq-gic.c | 87 ++- drivers/s390/char/sclp_early.c | 6 +- include/clocksource/arm_arch_timer.h | 12 +- include/kvm/arm_vgic.h | 7 +- include/linux/irqbypass.h | 4 +- include/linux/irqchip/arm-gic-common.h | 34 ++ include/linux/kvm_host.h | 39 +- include/trace/events/kvm.h | 11 +- include/uapi/linux/kvm.h | 1 + virt/kvm/Kconfig | 3 + virt/kvm/arm/arch_timer.c | 40 +- virt/kvm/arm/vgic-v2.c | 61 +-- virt/kvm/arm/vgic-v3.c | 47 +- virt/kvm/arm/vgic.c | 50 +- virt/kvm/eventfd.c | 18 +- virt/kvm/kvm_main.c | 32 +- virt/lib/irqbypass.c | 12 +- 75 files changed, 2398 insertions(+), 849 deletions(-) create mode 100644 arch/arm/include/asm/stage2_pgtable.h create mode 100644 arch/arm64/include/asm/stage2_pgtable-nopmd.h create mode 100644 arch/arm64/include/asm/stage2_pgtable-nopud.h create mode 100644 arch/arm64/include/asm/stage2_pgtable.h create mode 100644 include/linux/irqchip/arm-gic-common.h -- 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