Paolo, Please do a pull from my kvm-ppc-next branch to get a PPC KVM update for 4.10. This includes some changes to arch/powerpc which Michael Ellerman put into a topic branch in his powerpc tree (topic/ppc-kvm) which I have pulled into my kvm-ppc-next branch and which Michael will pull into his next branch. The changes this time are: * Support for KVM guests on POWER9 using the hashed page table MMU. * Updates and improvements to the halt-polling support on PPC, from Suraj Jitindar Singh. * An optimization to speed up emulated MMIO, from Yongji Xie. * Various other minor cleanups. Suraj's patch set includes some changes to core KVM code which were posted back in October and didn't attract much comment, so I put them in. They add some documentation for halt polling and export the module parameters used to control halt polling. Full disclosure: after I had pushed out some of the patches for POWER9 support, I discovered that they broke compilation with some uncommon configurations (those with HV KVM enabled but in-kernel XICS interrupt controller emulation disabled, or with SMP disabled). Since my kvm-ppc-next branch is a non-rebasing branch, I pushed a patch on top to fix the breakage. So bisection is broken over a span of about 6 commits for these unusual configurations. If you want me to rebase my kvm-ppc-next branch to avoid the breakage, let me know and I will do that. Thanks, Paul. The following changes since commit 813ae37e6aed72cc457094b6066aa38efd66c9e9: Merge branch 'x86/cpufeature' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip into kvm/next (2016-11-16 22:07:36 +0100) are available in the git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc.git kvm-ppc-next for you to fetch changes up to 6ccad8cea5bcb0660f56677a5fdc52265f8ddf76: KVM: Add halt polling documentation (2016-11-28 11:48:47 +1100) ---------------------------------------------------------------- Daniel Axtens (2): KVM: PPC: Book3S HV: Fix sparse static warning KVM: PPC: Book3S HV: sparse: prototypes for functions called from assembler David Gibson (2): KVM: PPC: Move KVM_PPC_PVINFO_FLAGS_EV_IDLE definition next to its structure KVM: PPC: Correctly report KVM_CAP_PPC_ALLOC_HTAB Geliang Tang (1): KVM: PPC: Book3S HV: Drop duplicate header asm/iommu.h Michael Ellerman (1): powerpc/reg: Add definition for LPCR_PECE_HVEE Michael Neuling (1): powerpc/powernv: Define and set POWER9 HFSCR doorbell bit Paul Mackerras (18): powerpc/64: Simplify adaptation to new ISA v3.00 HPTE format KVM: PPC: Book3S HV: Save/restore XER in checkpointed register state KVM: PPC: Book3S HV: Don't lose hardware R/C bit updates in H_PROTECT powerpc/64: Add some more SPRs and SPR bits for POWER9 powerpc/64: Provide functions for accessing POWER9 partition table powerpc/powernv: Define real-mode versions of OPAL XICS accessors Merge remote-tracking branch 'remotes/powerpc/topic/ppc-kvm' into kvm-ppc-next KVM: PPC: Book3S HV: Adapt to new HPTE format on POWER9 KVM: PPC: Book3S HV: Set partition table rather than SDR1 on POWER9 KVM: PPC: Book3S HV: Adjust host/guest context switch for POWER9 KVM: PPC: Book3S HV: Add new POWER9 guest-accessible SPRs KVM: PPC: Book3S HV: Adapt TLB invalidations to work on POWER9 KVM: PPC: Book3S HV: Use msgsnd for IPIs to other cores on POWER9 KVM: PPC: Book3S HV: Use OPAL XICS emulation on POWER9 KVM: PPC: Book3S HV: Use stop instruction rather than nap on POWER9 KVM: PPC: Book3S HV: Enable hypervisor virtualization interrupts while in guest KVM: PPC: Book3S HV: Treat POWER9 CPU threads as independent subcores KVM: PPC: Book3S HV: Fix compilation with unusual configurations Suraj Jitindar Singh (8): powerpc/64: Define new ISA v3.00 logical PVR value and PCR register value KVM: PPC: Book3S HV: Update kvmppc_set_arch_compat() for ISA v3.00 KVM: Export kvm module parameter variables KVM: PPC: Book3S HV: Use generic kvm module parameters KVM: PPC: Book3S HV: Add check for module parameter halt_poll_ns KVM: PPC: Decrease the powerpc default halt poll max value KVM: PPC: Book3S HV: Comment style and print format fixups KVM: Add halt polling documentation Wei Yongjun (1): KVM: PPC: Book3S HV: Use list_move_tail instead of list_del/list_add_tail Yongji Xie (2): KVM: PPC: Book3S HV: Clear the key field of HPTE when the page is paged out KVM: PPC: Book3S HV: Add a per vcpu cache for recently page faulted MMIO entries Documentation/virtual/kvm/00-INDEX | 2 + Documentation/virtual/kvm/api.txt | 3 + Documentation/virtual/kvm/halt-polling.txt | 127 +++++++++++++ arch/powerpc/include/asm/asm-prototypes.h | 44 +++++ arch/powerpc/include/asm/book3s/64/mmu-hash.h | 47 ++++- arch/powerpc/include/asm/kvm_asm.h | 1 + arch/powerpc/include/asm/kvm_host.h | 27 ++- arch/powerpc/include/asm/kvm_ppc.h | 7 +- arch/powerpc/include/asm/mmu.h | 5 + arch/powerpc/include/asm/opal.h | 3 + arch/powerpc/include/asm/reg.h | 15 ++ arch/powerpc/include/uapi/asm/kvm.h | 5 + arch/powerpc/kernel/asm-offsets.c | 4 + arch/powerpc/kernel/cpu_setup_power.S | 2 +- arch/powerpc/kvm/book3s_64_mmu_hv.c | 63 ++++-- arch/powerpc/kvm/book3s_64_vio_hv.c | 2 +- arch/powerpc/kvm/book3s_hv.c | 254 ++++++++++++++++++------- arch/powerpc/kvm/book3s_hv_builtin.c | 73 +++++-- arch/powerpc/kvm/book3s_hv_ras.c | 1 + arch/powerpc/kvm/book3s_hv_rm_mmu.c | 224 +++++++++++++++++----- arch/powerpc/kvm/book3s_hv_rm_xics.c | 24 ++- arch/powerpc/kvm/book3s_hv_rmhandlers.S | 140 ++++++++++---- arch/powerpc/kvm/powerpc.c | 16 +- arch/powerpc/kvm/trace_hv.h | 2 +- arch/powerpc/mm/hash_native_64.c | 30 ++- arch/powerpc/mm/hash_utils_64.c | 28 +-- arch/powerpc/mm/pgtable-radix.c | 18 +- arch/powerpc/mm/pgtable_64.c | 34 ++++ arch/powerpc/platforms/powernv/opal-wrappers.S | 3 + arch/powerpc/platforms/powernv/opal.c | 2 + arch/powerpc/platforms/ps3/htab.c | 2 +- arch/powerpc/platforms/pseries/lpar.c | 2 +- include/linux/kvm_host.h | 4 + include/uapi/linux/kvm.h | 5 +- virt/kvm/kvm_main.c | 9 +- 35 files changed, 977 insertions(+), 251 deletions(-) create mode 100644 Documentation/virtual/kvm/halt-polling.txt -- 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