mbox series

[GIT,PULL] Please pull my kvm-ppc-next-5.2-1 tag

Message ID 20190502040646.GA3661@blackberry (mailing list archive)
State New, archived
Headers show
Series [GIT,PULL] Please pull my kvm-ppc-next-5.2-1 tag | expand

Pull-request

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

Message

Paul Mackerras May 2, 2019, 4:06 a.m. UTC
Paolo or Radim,

Please do a pull from my kvm-ppc-next-5.2-1 tag to get a PPC update
for 5.2.  The main new feature here is that we can now let guests
access the POWER9 XIVE interrupt controller directly for things like
acknowledge, EOI, enable and disable on interrupts, rather than
requiring guests to do hypercalls for these operations.

I have merged in the topic/ppc-kvm branch from the powerpc tree
because one of the patches there is a prerequisite for the XIVE patch
series.  That's why there are changes to arch/powerpc/kernel in the
diffstat.

Stephen Rothwell noted a conflict between my tree and the kvm-arm tree
because we have both allocated new capability numbers.

The XIVE patch series also modifies generic KVM code to add mmap and
release methods on KVM devices.

Thanks,
Paul.

The following changes since commit 345077c8e172c255ea0707214303ccd099e5656b:

  KVM: PPC: Book3S: Protect memslots while validating user address (2019-04-05 14:37:24 +1100)

are available in the git repository at:

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

for you to fetch changes up to 0caecf5b00199636eb2d32201199ecd6be52558d:

  KVM: PPC: Book3S HV: XIVE: Clear escalation interrupt pointers on device close (2019-04-30 19:41:01 +1000)

----------------------------------------------------------------
PPC KVM update for 5.2

* Support for guests to access the new POWER9 XIVE interrupt controller
  hardware directly, reducing interrupt latency and overhead for guests.

* In-kernel implementation of the H_PAGE_INIT hypercall.

* Reduce memory usage of sparsely-populated IOMMU tables.

* Several bug fixes.

----------------------------------------------------------------
Alexey Kardashevskiy (3):
      KVM: PPC: Book3S HV: Fix lockdep warning when entering the guest
      KVM: PPC: Book3S HV: Avoid lockdep debugging in TCE realmode handlers
      KVM: PPC: Book3S: Allocate guest TCEs on demand too

Cédric Le Goater (17):
      powerpc/xive: add OPAL extensions for the XIVE native exploitation support
      KVM: PPC: Book3S HV: Add a new KVM device for the XIVE native exploitation mode
      KVM: PPC: Book3S HV: XIVE: Introduce a new capability KVM_CAP_PPC_IRQ_XIVE
      KVM: PPC: Book3S HV: XIVE: add a control to initialize a source
      KVM: PPC: Book3S HV: XIVE: Add a control to configure a source
      KVM: PPC: Book3S HV: XIVE: Add controls for the EQ configuration
      KVM: PPC: Book3S HV: XIVE: Add a global reset control
      KVM: PPC: Book3S HV: XIVE: Add a control to sync the sources
      KVM: PPC: Book3S HV: XIVE: Add a control to dirty the XIVE EQ pages
      KVM: PPC: Book3S HV: XIVE: Add get/set accessors for the VP XIVE state
      KVM: Introduce a 'mmap' method for KVM devices
      KVM: PPC: Book3S HV: XIVE: Add a TIMA mapping
      KVM: PPC: Book3S HV: XIVE: Add a mapping for the source ESB pages
      KVM: PPC: Book3S HV: XIVE: Add passthrough support
      KVM: PPC: Book3S HV: XIVE: Activate XIVE exploitation mode
      KVM: Introduce a 'release' method for KVM devices
      KVM: PPC: Book3S HV: XIVE: Replace the 'destroy' method by a 'release' method

Michael Neuling (1):
      powerpc: Add force enable of DAWR on P9 option

Palmer Dabbelt (1):
      KVM: PPC: Book3S HV: smb->smp comment fixup

Paul Mackerras (6):
      KVM: PPC: Book3S HV: Fix XICS-on-XIVE H_IPI when priority = 0
      KVM: PPC: Book3S HV: Move HPT guest TLB flushing to C code
      KVM: PPC: Book3S HV: Flush TLB on secondary radix threads
      Merge remote-tracking branch 'remotes/powerpc/topic/ppc-kvm' into kvm-ppc-next
      KVM: PPC: Book3S HV: XIVE: Prevent races when releasing device
      KVM: PPC: Book3S HV: XIVE: Clear escalation interrupt pointers on device close

Suraj Jitindar Singh (4):
      KVM: PPC: Book3S HV: Implement virtual mode H_PAGE_INIT handler
      KVM: PPC: Book3S HV: Implement real mode H_PAGE_INIT handler
      KVM: PPC: Book3S HV: Handle virtual mode in XIVE VCPU push code
      KVM: PPC: Book3S HV: Save/restore vrsave register in kvmhv_p9_guest_entry()

 Documentation/powerpc/DAWR-POWER9.txt      |   32 +
 Documentation/virtual/kvm/api.txt          |   10 +
 Documentation/virtual/kvm/devices/xive.txt |  197 +++++
 arch/powerpc/include/asm/hw_breakpoint.h   |    8 +
 arch/powerpc/include/asm/kvm_host.h        |   11 +-
 arch/powerpc/include/asm/kvm_ppc.h         |   41 +-
 arch/powerpc/include/asm/opal-api.h        |    7 +-
 arch/powerpc/include/asm/opal.h            |    7 +
 arch/powerpc/include/asm/xive.h            |   17 +
 arch/powerpc/include/uapi/asm/kvm.h        |   46 +
 arch/powerpc/kernel/hw_breakpoint.c        |   62 +-
 arch/powerpc/kernel/process.c              |    9 +-
 arch/powerpc/kernel/ptrace.c               |    3 +-
 arch/powerpc/kvm/Makefile                  |    2 +-
 arch/powerpc/kvm/book3s.c                  |   42 +-
 arch/powerpc/kvm/book3s_64_vio.c           |   96 ++-
 arch/powerpc/kvm/book3s_64_vio_hv.c        |  105 ++-
 arch/powerpc/kvm/book3s_hv.c               |  155 ++--
 arch/powerpc/kvm/book3s_hv_builtin.c       |   57 ++
 arch/powerpc/kvm/book3s_hv_rm_mmu.c        |  144 ++++
 arch/powerpc/kvm/book3s_hv_rmhandlers.S    |  103 +--
 arch/powerpc/kvm/book3s_xive.c             |  250 ++++--
 arch/powerpc/kvm/book3s_xive.h             |   37 +
 arch/powerpc/kvm/book3s_xive_native.c      | 1249 ++++++++++++++++++++++++++++
 arch/powerpc/kvm/book3s_xive_template.c    |   78 +-
 arch/powerpc/kvm/powerpc.c                 |   37 +
 arch/powerpc/platforms/powernv/opal-call.c |    3 +
 arch/powerpc/sysdev/xive/native.c          |  110 +++
 include/linux/kvm_host.h                   |   10 +
 include/uapi/linux/kvm.h                   |    3 +
 virt/kvm/kvm_main.c                        |   24 +
 31 files changed, 2670 insertions(+), 285 deletions(-)
 create mode 100644 Documentation/virtual/kvm/devices/xive.txt
 create mode 100644 arch/powerpc/kvm/book3s_xive_native.c

Comments

Paul Mackerras May 9, 2019, 10:46 p.m. UTC | #1
On Thu, May 02, 2019 at 02:06:46PM +1000, Paul Mackerras wrote:
> Paolo or Radim,
> 
> Please do a pull from my kvm-ppc-next-5.2-1 tag to get a PPC update
> for 5.2.  The main new feature here is that we can now let guests
> access the POWER9 XIVE interrupt controller directly for things like
> acknowledge, EOI, enable and disable on interrupts, rather than
> requiring guests to do hypercalls for these operations.
> 
> I have merged in the topic/ppc-kvm branch from the powerpc tree
> because one of the patches there is a prerequisite for the XIVE patch
> series.  That's why there are changes to arch/powerpc/kernel in the
> diffstat.
> 
> Stephen Rothwell noted a conflict between my tree and the kvm-arm tree
> because we have both allocated new capability numbers.
> 
> The XIVE patch series also modifies generic KVM code to add mmap and
> release methods on KVM devices.
> 
> Thanks,
> Paul.

Ping?

> The following changes since commit 345077c8e172c255ea0707214303ccd099e5656b:
> 
>   KVM: PPC: Book3S: Protect memslots while validating user address (2019-04-05 14:37:24 +1100)
> 
> are available in the git repository at:
> 
>   git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc tags/kvm-ppc-next-5.2-1
> 
> for you to fetch changes up to 0caecf5b00199636eb2d32201199ecd6be52558d:
> 
>   KVM: PPC: Book3S HV: XIVE: Clear escalation interrupt pointers on device close (2019-04-30 19:41:01 +1000)
> 
> ----------------------------------------------------------------
> PPC KVM update for 5.2
> 
> * Support for guests to access the new POWER9 XIVE interrupt controller
>   hardware directly, reducing interrupt latency and overhead for guests.
> 
> * In-kernel implementation of the H_PAGE_INIT hypercall.
> 
> * Reduce memory usage of sparsely-populated IOMMU tables.
> 
> * Several bug fixes.
> 
> ----------------------------------------------------------------
> Alexey Kardashevskiy (3):
>       KVM: PPC: Book3S HV: Fix lockdep warning when entering the guest
>       KVM: PPC: Book3S HV: Avoid lockdep debugging in TCE realmode handlers
>       KVM: PPC: Book3S: Allocate guest TCEs on demand too
> 
> Cédric Le Goater (17):
>       powerpc/xive: add OPAL extensions for the XIVE native exploitation support
>       KVM: PPC: Book3S HV: Add a new KVM device for the XIVE native exploitation mode
>       KVM: PPC: Book3S HV: XIVE: Introduce a new capability KVM_CAP_PPC_IRQ_XIVE
>       KVM: PPC: Book3S HV: XIVE: add a control to initialize a source
>       KVM: PPC: Book3S HV: XIVE: Add a control to configure a source
>       KVM: PPC: Book3S HV: XIVE: Add controls for the EQ configuration
>       KVM: PPC: Book3S HV: XIVE: Add a global reset control
>       KVM: PPC: Book3S HV: XIVE: Add a control to sync the sources
>       KVM: PPC: Book3S HV: XIVE: Add a control to dirty the XIVE EQ pages
>       KVM: PPC: Book3S HV: XIVE: Add get/set accessors for the VP XIVE state
>       KVM: Introduce a 'mmap' method for KVM devices
>       KVM: PPC: Book3S HV: XIVE: Add a TIMA mapping
>       KVM: PPC: Book3S HV: XIVE: Add a mapping for the source ESB pages
>       KVM: PPC: Book3S HV: XIVE: Add passthrough support
>       KVM: PPC: Book3S HV: XIVE: Activate XIVE exploitation mode
>       KVM: Introduce a 'release' method for KVM devices
>       KVM: PPC: Book3S HV: XIVE: Replace the 'destroy' method by a 'release' method
> 
> Michael Neuling (1):
>       powerpc: Add force enable of DAWR on P9 option
> 
> Palmer Dabbelt (1):
>       KVM: PPC: Book3S HV: smb->smp comment fixup
> 
> Paul Mackerras (6):
>       KVM: PPC: Book3S HV: Fix XICS-on-XIVE H_IPI when priority = 0
>       KVM: PPC: Book3S HV: Move HPT guest TLB flushing to C code
>       KVM: PPC: Book3S HV: Flush TLB on secondary radix threads
>       Merge remote-tracking branch 'remotes/powerpc/topic/ppc-kvm' into kvm-ppc-next
>       KVM: PPC: Book3S HV: XIVE: Prevent races when releasing device
>       KVM: PPC: Book3S HV: XIVE: Clear escalation interrupt pointers on device close
> 
> Suraj Jitindar Singh (4):
>       KVM: PPC: Book3S HV: Implement virtual mode H_PAGE_INIT handler
>       KVM: PPC: Book3S HV: Implement real mode H_PAGE_INIT handler
>       KVM: PPC: Book3S HV: Handle virtual mode in XIVE VCPU push code
>       KVM: PPC: Book3S HV: Save/restore vrsave register in kvmhv_p9_guest_entry()
> 
>  Documentation/powerpc/DAWR-POWER9.txt      |   32 +
>  Documentation/virtual/kvm/api.txt          |   10 +
>  Documentation/virtual/kvm/devices/xive.txt |  197 +++++
>  arch/powerpc/include/asm/hw_breakpoint.h   |    8 +
>  arch/powerpc/include/asm/kvm_host.h        |   11 +-
>  arch/powerpc/include/asm/kvm_ppc.h         |   41 +-
>  arch/powerpc/include/asm/opal-api.h        |    7 +-
>  arch/powerpc/include/asm/opal.h            |    7 +
>  arch/powerpc/include/asm/xive.h            |   17 +
>  arch/powerpc/include/uapi/asm/kvm.h        |   46 +
>  arch/powerpc/kernel/hw_breakpoint.c        |   62 +-
>  arch/powerpc/kernel/process.c              |    9 +-
>  arch/powerpc/kernel/ptrace.c               |    3 +-
>  arch/powerpc/kvm/Makefile                  |    2 +-
>  arch/powerpc/kvm/book3s.c                  |   42 +-
>  arch/powerpc/kvm/book3s_64_vio.c           |   96 ++-
>  arch/powerpc/kvm/book3s_64_vio_hv.c        |  105 ++-
>  arch/powerpc/kvm/book3s_hv.c               |  155 ++--
>  arch/powerpc/kvm/book3s_hv_builtin.c       |   57 ++
>  arch/powerpc/kvm/book3s_hv_rm_mmu.c        |  144 ++++
>  arch/powerpc/kvm/book3s_hv_rmhandlers.S    |  103 +--
>  arch/powerpc/kvm/book3s_xive.c             |  250 ++++--
>  arch/powerpc/kvm/book3s_xive.h             |   37 +
>  arch/powerpc/kvm/book3s_xive_native.c      | 1249 ++++++++++++++++++++++++++++
>  arch/powerpc/kvm/book3s_xive_template.c    |   78 +-
>  arch/powerpc/kvm/powerpc.c                 |   37 +
>  arch/powerpc/platforms/powernv/opal-call.c |    3 +
>  arch/powerpc/sysdev/xive/native.c          |  110 +++
>  include/linux/kvm_host.h                   |   10 +
>  include/uapi/linux/kvm.h                   |    3 +
>  virt/kvm/kvm_main.c                        |   24 +
>  31 files changed, 2670 insertions(+), 285 deletions(-)
>  create mode 100644 Documentation/virtual/kvm/devices/xive.txt
>  create mode 100644 arch/powerpc/kvm/book3s_xive_native.c