[GIT,PULL] Please pull my kvm-ppc-next branch

Submitted by Paul Mackerras on April 21, 2017, 7:52 a.m.

Details

Message ID 20170421075214.GB9376@fergus.ozlabs.ibm.com
State New
Headers show

Pull-request

git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc kvm-ppc-next

Commit Message

Paul Mackerras April 21, 2017, 7:52 a.m.
Paolo,

Please do a pull from my kvm-ppc-next branch to get a PPC KVM update
to go into 4.12.  I have re-done the branch to avoid the bisection
breakage that Alexey noted.

The highlights are:

* In-kernel acceleration for IOMMU update hypercalls, from Alexey
  Kardashevskiy.

* Extend the set of load/store instructions which can be used to
  access emulated MMIO locations to include floating-point and
  vector-scalar instructions, from Bin Lu and myself.

* Some fixes to allow PCI pass-through to work in nested guests using
  PR KVM, from Alexey Kardashevskiy.

There will be a conflict in include/uapi/linux/kvm.h when you do the
merge, which can easily be fixed by assigning the next available
number for KVM_CAP_SPAPR_TCE_VFIO.

Note that some of the commits here came from Michael Ellerman's
topic/ppc-kvm branch and will also go upstream via his tree.

Thanks,
Paul.

The following changes since commit f7b1a77d3bfbdc7e91a1e48e0a3dc10e7d890e04:

  Merge tag 'kvm-s390-next-4.12-1' of git://git.kernel.org/pub/scm/linux/kernel/git/kvms390/linux (2017-04-11 20:54:40 +0200)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc kvm-ppc-next

for you to fetch changes up to feafd13c96d6e2998d3da81bb55db379fcf02499:

  KVM: PPC: Book3S PR: Do not fail emulation with mtspr/mfspr for unknown SPRs (2017-04-20 11:39:32 +1000)

----------------------------------------------------------------
Alexey Kardashevskiy (15):
      powerpc/mmu: Add real mode support for IOMMU preregistered memory
      powerpc/powernv/iommu: Add real mode version of iommu_table_ops::exchange()
      powerpc/iommu/vfio_spapr_tce: Cleanup iommu_table disposal
      powerpc/vfio_spapr_tce: Add reference counting to iommu_table
      KVM: PPC: Add MMIO emulation for stdx (store doubleword indexed)
      KVM: PPC: Book3S PR: Get rid of unused local variable
      KVM: PPC: Book3S PR: Exit KVM on failed mapping
      KVM: PPC: Book3S PR: Preserve storage control bits
      KVM: PPC: Align the table size to system page size
      KVM: PPC: Reserve KVM_CAP_SPAPR_TCE_VFIO capability number
      KVM: PPC: Enable IOMMU_API for KVM_BOOK3S_64 permanently
      KVM: PPC: Pass kvm* to kvmppc_find_table()
      KVM: PPC: Use preregistered memory API to access TCE list
      KVM: PPC: iommu: Unify TCE checking
      KVM: PPC: VFIO: Add in-kernel acceleration for VFIO

Bin Lu (1):
      KVM: PPC: Book3S: Add MMIO emulation for FP and VSX instructions

Markus Elfring (2):
      KVM: PPC: Book3S HV: Use common error handling code in kvmppc_clr_passthru_irq()
      KVM: PPC: e500: Use kcalloc() in e500_mmu_host_init()

Paul Mackerras (4):
      KVM: PPC: Provide functions for queueing up FP/VEC/VSX unavailable interrupts
      KVM: PPC: Emulation for more integer loads and stores
      KVM: PPC: Add MMIO emulation for remaining floating-point instructions
      Merge remote-tracking branch 'remotes/powerpc/topic/ppc-kvm' into kvm-ppc-next

Thomas Huth (1):
      KVM: PPC: Book3S PR: Do not fail emulation with mtspr/mfspr for unknown SPRs

 Documentation/virtual/kvm/devices/vfio.txt |  18 +-
 arch/powerpc/include/asm/disassemble.h     |   5 +
 arch/powerpc/include/asm/iommu.h           |  32 +-
 arch/powerpc/include/asm/kvm_host.h        |  32 ++
 arch/powerpc/include/asm/kvm_ppc.h         |  22 +-
 arch/powerpc/include/asm/mmu_context.h     |   4 +
 arch/powerpc/include/asm/ppc-opcode.h      |  58 ++++
 arch/powerpc/kernel/iommu.c                |  91 ++++--
 arch/powerpc/kvm/Kconfig                   |   1 +
 arch/powerpc/kvm/book3s.c                  |  18 ++
 arch/powerpc/kvm/book3s_64_mmu.c           |   1 +
 arch/powerpc/kvm/book3s_64_mmu_host.c      |   7 +-
 arch/powerpc/kvm/book3s_64_vio.c           | 315 ++++++++++++++++++-
 arch/powerpc/kvm/book3s_64_vio_hv.c        | 303 +++++++++++++++---
 arch/powerpc/kvm/book3s_emulate.c          |  34 ++-
 arch/powerpc/kvm/book3s_hv.c               |   8 +-
 arch/powerpc/kvm/book3s_pr.c               |  12 +-
 arch/powerpc/kvm/booke.c                   |   5 +
 arch/powerpc/kvm/e500_mmu_host.c           |   5 +-
 arch/powerpc/kvm/emulate.c                 |   8 +
 arch/powerpc/kvm/emulate_loadstore.c       | 472 ++++++++++++++++++++++++++---
 arch/powerpc/kvm/powerpc.c                 | 320 ++++++++++++++++++-
 arch/powerpc/mm/mmu_context_iommu.c        |  39 +++
 arch/powerpc/platforms/powernv/pci-ioda.c  |  46 ++-
 arch/powerpc/platforms/powernv/pci.c       |   1 +
 arch/powerpc/platforms/pseries/iommu.c     |   3 +-
 arch/powerpc/platforms/pseries/vio.c       |   2 +-
 drivers/vfio/vfio_iommu_spapr_tce.c        |   2 +-
 include/uapi/linux/kvm.h                   |   7 +
 virt/kvm/vfio.c                            | 105 +++++++
 30 files changed, 1799 insertions(+), 177 deletions(-)
--
To unsubscribe from this list: send the line "unsubscribe kvm-ppc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

Paolo Bonzini April 21, 2017, 10:28 a.m.
On 21/04/2017 09:52, Paul Mackerras wrote:
> Paolo,
> 
> Please do a pull from my kvm-ppc-next branch to get a PPC KVM update
> to go into 4.12.  I have re-done the branch to avoid the bisection
> breakage that Alexey noted.
> 
> The highlights are:
> 
> * In-kernel acceleration for IOMMU update hypercalls, from Alexey
>   Kardashevskiy.
> 
> * Extend the set of load/store instructions which can be used to
>   access emulated MMIO locations to include floating-point and
>   vector-scalar instructions, from Bin Lu and myself.
> 
> * Some fixes to allow PCI pass-through to work in nested guests using
>   PR KVM, from Alexey Kardashevskiy.
> 
> There will be a conflict in include/uapi/linux/kvm.h when you do the
> merge, which can easily be fixed by assigning the next available
> number for KVM_CAP_SPAPR_TCE_VFIO.

Pulled, thanks.  No conflict, the cap kept 142 as its numeric value.

Paolo

> Note that some of the commits here came from Michael Ellerman's
> topic/ppc-kvm branch and will also go upstream via his tree.
> 
> Thanks,
> Paul.
> 
> The following changes since commit f7b1a77d3bfbdc7e91a1e48e0a3dc10e7d890e04:
> 
>   Merge tag 'kvm-s390-next-4.12-1' of git://git.kernel.org/pub/scm/linux/kernel/git/kvms390/linux (2017-04-11 20:54:40 +0200)
> 
> are available in the git repository at:
> 
>   git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc kvm-ppc-next
> 
> for you to fetch changes up to feafd13c96d6e2998d3da81bb55db379fcf02499:
> 
>   KVM: PPC: Book3S PR: Do not fail emulation with mtspr/mfspr for unknown SPRs (2017-04-20 11:39:32 +1000)
> 
> ----------------------------------------------------------------
> Alexey Kardashevskiy (15):
>       powerpc/mmu: Add real mode support for IOMMU preregistered memory
>       powerpc/powernv/iommu: Add real mode version of iommu_table_ops::exchange()
>       powerpc/iommu/vfio_spapr_tce: Cleanup iommu_table disposal
>       powerpc/vfio_spapr_tce: Add reference counting to iommu_table
>       KVM: PPC: Add MMIO emulation for stdx (store doubleword indexed)
>       KVM: PPC: Book3S PR: Get rid of unused local variable
>       KVM: PPC: Book3S PR: Exit KVM on failed mapping
>       KVM: PPC: Book3S PR: Preserve storage control bits
>       KVM: PPC: Align the table size to system page size
>       KVM: PPC: Reserve KVM_CAP_SPAPR_TCE_VFIO capability number
>       KVM: PPC: Enable IOMMU_API for KVM_BOOK3S_64 permanently
>       KVM: PPC: Pass kvm* to kvmppc_find_table()
>       KVM: PPC: Use preregistered memory API to access TCE list
>       KVM: PPC: iommu: Unify TCE checking
>       KVM: PPC: VFIO: Add in-kernel acceleration for VFIO
> 
> Bin Lu (1):
>       KVM: PPC: Book3S: Add MMIO emulation for FP and VSX instructions
> 
> Markus Elfring (2):
>       KVM: PPC: Book3S HV: Use common error handling code in kvmppc_clr_passthru_irq()
>       KVM: PPC: e500: Use kcalloc() in e500_mmu_host_init()
> 
> Paul Mackerras (4):
>       KVM: PPC: Provide functions for queueing up FP/VEC/VSX unavailable interrupts
>       KVM: PPC: Emulation for more integer loads and stores
>       KVM: PPC: Add MMIO emulation for remaining floating-point instructions
>       Merge remote-tracking branch 'remotes/powerpc/topic/ppc-kvm' into kvm-ppc-next
> 
> Thomas Huth (1):
>       KVM: PPC: Book3S PR: Do not fail emulation with mtspr/mfspr for unknown SPRs
> 
>  Documentation/virtual/kvm/devices/vfio.txt |  18 +-
>  arch/powerpc/include/asm/disassemble.h     |   5 +
>  arch/powerpc/include/asm/iommu.h           |  32 +-
>  arch/powerpc/include/asm/kvm_host.h        |  32 ++
>  arch/powerpc/include/asm/kvm_ppc.h         |  22 +-
>  arch/powerpc/include/asm/mmu_context.h     |   4 +
>  arch/powerpc/include/asm/ppc-opcode.h      |  58 ++++
>  arch/powerpc/kernel/iommu.c                |  91 ++++--
>  arch/powerpc/kvm/Kconfig                   |   1 +
>  arch/powerpc/kvm/book3s.c                  |  18 ++
>  arch/powerpc/kvm/book3s_64_mmu.c           |   1 +
>  arch/powerpc/kvm/book3s_64_mmu_host.c      |   7 +-
>  arch/powerpc/kvm/book3s_64_vio.c           | 315 ++++++++++++++++++-
>  arch/powerpc/kvm/book3s_64_vio_hv.c        | 303 +++++++++++++++---
>  arch/powerpc/kvm/book3s_emulate.c          |  34 ++-
>  arch/powerpc/kvm/book3s_hv.c               |   8 +-
>  arch/powerpc/kvm/book3s_pr.c               |  12 +-
>  arch/powerpc/kvm/booke.c                   |   5 +
>  arch/powerpc/kvm/e500_mmu_host.c           |   5 +-
>  arch/powerpc/kvm/emulate.c                 |   8 +
>  arch/powerpc/kvm/emulate_loadstore.c       | 472 ++++++++++++++++++++++++++---
>  arch/powerpc/kvm/powerpc.c                 | 320 ++++++++++++++++++-
>  arch/powerpc/mm/mmu_context_iommu.c        |  39 +++
>  arch/powerpc/platforms/powernv/pci-ioda.c  |  46 ++-
>  arch/powerpc/platforms/powernv/pci.c       |   1 +
>  arch/powerpc/platforms/pseries/iommu.c     |   3 +-
>  arch/powerpc/platforms/pseries/vio.c       |   2 +-
>  drivers/vfio/vfio_iommu_spapr_tce.c        |   2 +-
>  include/uapi/linux/kvm.h                   |   7 +
>  virt/kvm/vfio.c                            | 105 +++++++
>  30 files changed, 1799 insertions(+), 177 deletions(-)
> 
--
To unsubscribe from this list: send the line "unsubscribe kvm-ppc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html