Yakkety SRU - POWER9 KVM patches on top of 4.8
Tim Gardner
tim.gardner at canonical.com
Thu Jan 5 21:58:51 UTC 2017
This pull request is cumulative on top of the previous power9-base
branch in case we decide to defer these KVM patches until the next SRU
cycle.
rtg
--
Tim Gardner tim.gardner at canonical.com
-------------- next part --------------
The following changes since commit 22d5a8c919aebb19bd32397d657523df7b5bf7eb:
mfd: intel-lpss: Add default I2C device properties for Apollo Lake (2017-01-03 16:13:30 +0000)
are available in the git repository at:
git://kernel.ubuntu.com/rtg/ubuntu-yakkety.git power9-kvm
for you to fetch changes up to 171cee402fcaef0bceffb0231a3ba91dca1f1b4f:
KVM/PPC/Book3S HV: Convert to hotplug state machine (2017-01-05 14:49:13 -0700)
----------------------------------------------------------------
Alexey Kardashevskiy (7):
powerpc/iommu: Pass mm_struct to init/cleanup helpers
powerpc/iommu: Stop using @current in mm_iommu_xxx
vfio/spapr: Postpone allocation of userspace version of TCE table
vfio/spapr: Add a helper to create default DMA window
vfio/spapr: Postpone default window creation
vfio/spapr: Reference mm in tce_container
powerpc/mm/iommu, vfio/spapr: Put pages on VFIO container shutdown
Aneesh Kumar K.V (16):
powerpc/book3s: Add a cpu table entry for different POWER9 revs
powerpc/mm/radix: Use different RTS encoding for different POWER9 revs
powerpc/mm/radix: Use different pte update sequence for different POWER9 revs
powerpc/mm: Update the HID bit when switching from radix to hash
powerpc/mm: Add radix flush all with IS=3
powerpc/mm: Fix missing update of HID register on secondary CPUs
mm: update mmu_gather range correctly
mm/hugetlb: add tlb_remove_hugetlb_entry for handling hugetlb pages
mm: add tlb_remove_check_page_size_change to track page size change
powerpc/mm: Rename hugetlb-radix.h to hugetlb.h
powerpc/mm/hugetlb: Handle hugepage size supported by hash config
powerpc/mm: Introduce _PAGE_LARGE software pte bits
powerpc/mm: Add radix__tlb_flush_pte_p9_dd1()
powerpc/mm: update radix__ptep_set_access_flag to not do full mm tlb flush
powerpc/mm: update radix__pte_update to not do full mm tlb flush
powerpc/mm: Batch tlb flush when invalidating pte entries
Anna-Maria Gleixner (1):
KVM/PPC/Book3S HV: Convert to hotplug state machine
Balbir Singh (4):
powerpc/mm/radix: Setup AMOR in HV mode to allow key 0
powerpc/mm: Detect instruction fetch denied and report
powerpc/mm/radix: Prevent kernel execution of user space
KVM: PPC: Book3S: Remove duplicate setting of the B field in tlbie
Benjamin Herrenschmidt (3):
powerpc/64/kexec: NULL check "clear_all" in kexec_sequence
powerpc/64/kexec: Fix MMU cleanup on radix
powerpc/64/kexec: Copy image with MMU off when possible
Daniel Axtens (3):
powerpc/sparse: Make a bunch of things static
KVM: PPC: Book3S HV: Fix sparse static warning
KVM: PPC: Book3S HV: sparse: prototypes for functions called from assembler
David Gibson (1):
KVM: PPC: Correctly report KVM_CAP_PPC_ALLOC_HTAB
Gautham R. Shenoy (1):
powernv: Clear SPRN_PSSCR when a POWER9 CPU comes online
Geliang Tang (1):
KVM: PPC: Book3S HV: Drop duplicate header asm/iommu.h
Luiz Capitulino (1):
kvm: add stubs for arch specific debugfs support
Madhavan Srinivasan (4):
powerpc/perf: factor out the event format field
powerpc/perf: update attribute_group data structure
powerpc/perf: power9 raw event format encoding
powerpc/perf: macros for power9 format encoding
Markus Elfring (6):
KVM: PPC: e500: Use kmalloc_array() in kvm_vcpu_ioctl_config_tlb()
KVM: PPC: e500: Less function calls in kvm_vcpu_ioctl_config_tlb() after error detection
KVM: PPC: e500: Delete an unnecessary initialisation in kvm_vcpu_ioctl_config_tlb()
KVM: PPC: e500: Replace kzalloc() calls by kcalloc() in two functions
KVM: PPC: e500: Use kmalloc_array() in kvmppc_e500_tlb_init()
KVM: PPC: e500: Rename jump labels in kvmppc_e500_tlb_init()
Michael Ellerman (1):
KVM: PPC: Book3S HV: Fix build error when SMP=n
Michael Neuling (2):
powerpc/mm/radix: Invalidate ERAT on tlbiel for POWER9 DD1
powerpc: Revert Load Monitor Register Support
Paul Mackerras (24):
powerpc/64: Simplify adaptation to new ISA v3.00 HPTE format
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
KVM: PPC: Book3S: Don't crash if irqfd used with no in-kernel XICS emulation
KVM: PPC: Implement kvm_arch_intc_initialized() for PPC
powerpc/mm: Speed up computation of base and actual page size for a HPTE
KVM: PPC: Book3S HV: Set server for passed-through interrupts
KVM: PPC: Book3S: Treat VTB as a per-subcore register, not per-thread
KVM: PPC: Book3S HV: Take out virtual core piggybacking code
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
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
KVM: PPC: Book3S: Move prototypes for KVM functions into kvm_ppc.h
Suraj Jitindar Singh (13):
powerpc/64: Define new ISA v3.00 logical PVR value and PCR register value
powerpc/mm: Correct process and partition table max size
KVM: PPC: Book3S HV: Move struct kvmppc_vcore from kvm_host.h to kvm_book3s.h
KVM: PPC: Book3S HV: Change vcore element runnable_threads from linked-list to array
KVM: Export kvm module parameter variables
KVM: PPC: Book3S HV: Implement halt polling
KVM: Add provisioning for ulong vm stats and u64 vcpu stats
KVM: PPC: Implement existing and add new halt polling vcpu stats
KVM: PPC: Book3S HV: Update kvmppc_set_arch_compat() for ISA v3.00
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
Suresh Warrier (12):
powerpc: Add simple cache inhibited MMIO accessors
KVM: PPC: Book3S HV: Convert kvmppc_read_intr to a C function
KVM: PPC: select IRQ_BYPASS_MANAGER
KVM: PPC: Book3S HV: Introduce kvmppc_passthru_irqmap
powerpc/powernv: Provide facilities for EOI, usable from real mode
KVM: PPC: Book3S HV: Enable IRQ bypass
KVM: PPC: Book3S HV: Handle passthrough interrupts in guest
KVM: PPC: Book3S HV: Complete passthrough interrupt in host
KVM: PPC: Book3S HV: Dump irqmap in debugfs
KVM: PPC: Book3S HV: Tunable to disable KVM IRQ bypass
KVM: PPC: Book3S HV: Update irq stats for IRQs handled in real mode
KVM: PPC: Book3S HV: Counters for passthrough IRQ stats
Thomas Huth (1):
KVM: PPC: Book3S PR: Support 64kB page size on POWER8E and POWER8NVL
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/api.txt | 3 +
arch/arm/include/asm/kvm_host.h | 12 +-
arch/arm/include/asm/tlb.h | 8 +
arch/arm/kvm/arm.c | 10 +
arch/arm64/include/asm/kvm_host.h | 12 +-
arch/ia64/include/asm/tlb.h | 9 +
arch/mips/include/asm/kvm_host.h | 46 +-
arch/mips/kvm/mips.c | 10 +
arch/powerpc/include/asm/book3s/32/pgtable.h | 4 +-
.../asm/book3s/64/{hugetlb-radix.h => hugetlb.h} | 28 +-
arch/powerpc/include/asm/book3s/64/mmu-hash.h | 84 ++-
arch/powerpc/include/asm/book3s/64/pgtable.h | 16 +-
arch/powerpc/include/asm/book3s/64/radix.h | 88 ++-
.../powerpc/include/asm/book3s/64/tlbflush-radix.h | 3 +
arch/powerpc/include/asm/cputable.h | 4 +-
arch/powerpc/include/asm/hugetlb.h | 2 +-
arch/powerpc/include/asm/io.h | 29 +
arch/powerpc/include/asm/kvm_asm.h | 11 +
arch/powerpc/include/asm/kvm_book3s.h | 39 +
arch/powerpc/include/asm/kvm_book3s_64.h | 90 +--
arch/powerpc/include/asm/kvm_host.h | 151 ++--
arch/powerpc/include/asm/kvm_ppc.h | 71 ++
arch/powerpc/include/asm/mmu-book3e.h | 3 +
arch/powerpc/include/asm/mmu.h | 10 +
arch/powerpc/include/asm/mmu_context.h | 20 +-
arch/powerpc/include/asm/nohash/32/pgtable.h | 4 +-
arch/powerpc/include/asm/nohash/64/pgtable.h | 4 +-
arch/powerpc/include/asm/opal.h | 4 +
arch/powerpc/include/asm/pnv-pci.h | 3 +
arch/powerpc/include/asm/ppc-opcode.h | 1 +
arch/powerpc/include/asm/processor.h | 2 -
arch/powerpc/include/asm/reg.h | 20 +-
arch/powerpc/include/asm/tlb.h | 16 +
arch/powerpc/include/uapi/asm/kvm.h | 5 +
arch/powerpc/kernel/asm-offsets.c | 6 +-
arch/powerpc/kernel/cpu_setup_power.S | 2 +
arch/powerpc/kernel/cputable.c | 19 +
arch/powerpc/kernel/machine_kexec_64.c | 59 +-
arch/powerpc/kernel/misc_64.S | 25 +-
arch/powerpc/kernel/module.c | 2 +-
arch/powerpc/kernel/nvram_64.c | 2 +-
arch/powerpc/kernel/process.c | 18 -
arch/powerpc/kernel/setup-common.c | 2 +-
arch/powerpc/kernel/traps.c | 9 -
arch/powerpc/kvm/Kconfig | 2 +
arch/powerpc/kvm/book3s.c | 13 +-
arch/powerpc/kvm/book3s_64_mmu_hv.c | 63 +-
arch/powerpc/kvm/book3s_64_vio_hv.c | 1 -
arch/powerpc/kvm/book3s_emulate.c | 2 +-
arch/powerpc/kvm/book3s_hv.c | 785 ++++++++++++++-------
arch/powerpc/kvm/book3s_hv_builtin.c | 208 +++++-
arch/powerpc/kvm/book3s_hv_ras.c | 1 +
arch/powerpc/kvm/book3s_hv_rm_mmu.c | 223 ++++--
arch/powerpc/kvm/book3s_hv_rm_xics.c | 134 +++-
arch/powerpc/kvm/book3s_hv_rmhandlers.S | 337 +++++----
arch/powerpc/kvm/book3s_pr.c | 10 +-
arch/powerpc/kvm/book3s_xics.c | 57 +-
arch/powerpc/kvm/book3s_xics.h | 2 +
arch/powerpc/kvm/e500_mmu.c | 73 +-
arch/powerpc/kvm/powerpc.c | 77 +-
arch/powerpc/kvm/trace_hv.h | 22 +
arch/powerpc/mm/fault.c | 7 +
arch/powerpc/mm/hash_native_64.c | 72 +-
arch/powerpc/mm/hash_utils_64.c | 112 ++-
arch/powerpc/mm/mmu_context_book3s64.c | 6 +-
arch/powerpc/mm/mmu_context_iommu.c | 60 +-
arch/powerpc/mm/pgtable-book3s64.c | 12 +-
arch/powerpc/mm/pgtable-radix.c | 102 ++-
arch/powerpc/mm/pgtable.c | 2 +-
arch/powerpc/mm/pgtable_64.c | 34 +
arch/powerpc/mm/tlb-radix.c | 46 ++
arch/powerpc/oprofile/cell/spu_profiler.c | 2 +-
arch/powerpc/oprofile/cell/spu_task_sync.c | 4 +-
arch/powerpc/perf/core-book3s.c | 2 +-
arch/powerpc/perf/hv-gpci.c | 2 +-
arch/powerpc/perf/isa207-common.c | 91 ++-
arch/powerpc/perf/isa207-common.h | 30 +-
arch/powerpc/perf/power7-pmu.c | 2 +-
arch/powerpc/perf/power8-pmu.c | 39 +-
arch/powerpc/perf/power9-pmu.c | 116 ++-
arch/powerpc/platforms/cell/cbe_regs.c | 2 +-
arch/powerpc/platforms/cell/iommu.c | 2 +-
arch/powerpc/platforms/cell/ras.c | 2 +-
arch/powerpc/platforms/maple/setup.c | 4 +-
arch/powerpc/platforms/pasemi/gpio_mdio.c | 4 +-
arch/powerpc/platforms/pasemi/iommu.c | 2 +-
arch/powerpc/platforms/pasemi/setup.c | 4 +-
arch/powerpc/platforms/powermac/pfunc_core.c | 2 +-
arch/powerpc/platforms/powermac/smp.c | 2 +-
arch/powerpc/platforms/powernv/npu-dma.c | 2 +-
arch/powerpc/platforms/powernv/opal-wrappers.S | 4 +
arch/powerpc/platforms/powernv/opal.c | 2 +
arch/powerpc/platforms/powernv/pci-ioda.c | 24 +-
arch/powerpc/platforms/ps3/htab.c | 2 +-
arch/powerpc/platforms/pseries/dlpar.c | 4 +-
arch/powerpc/platforms/pseries/lpar.c | 2 +-
arch/powerpc/platforms/pseries/scanlog.c | 2 +-
arch/powerpc/sysdev/mmio_nvram.c | 2 +-
arch/s390/include/asm/kvm_host.h | 134 ++--
arch/s390/include/asm/tlb.h | 8 +
arch/s390/kvm/kvm-s390.c | 10 +
arch/sh/include/asm/tlb.h | 9 +
arch/um/include/asm/tlb.h | 9 +
arch/x86/include/asm/kvm_host.h | 72 +-
arch/x86/kvm/Makefile | 2 +-
arch/x86/kvm/debugfs.c | 20 +
drivers/vfio/vfio_iommu_spapr_tce.c | 328 ++++++---
include/asm-generic/tlb.h | 65 +-
include/linux/cpuhotplug.h | 1 +
include/linux/kvm_host.h | 7 +
mm/huge_memory.c | 4 +
mm/hugetlb.c | 7 +-
mm/madvise.c | 1 +
mm/memory.c | 7 +-
virt/kvm/kvm_main.c | 13 +-
115 files changed, 3250 insertions(+), 1232 deletions(-)
rename arch/powerpc/include/asm/book3s/64/{hugetlb-radix.h => hugetlb.h} (52%)
create mode 100644 arch/x86/kvm/debugfs.c
More information about the kernel-team
mailing list