mbox

[GIT,PULL,00/42] KVM: s390: PCI, CPU topology, PV features

Message ID 20220721161302.156182-1-imbrenda@linux.ibm.com (mailing list archive)
State New, archived
Headers show

Pull-request

ssh://git@gitolite.kernel.org/pub/scm/linux/kernel/git/kvms390/linux.git tags/kvm-s390-next-5.20-1

Message

Claudio Imbrenda July 21, 2022, 4:12 p.m. UTC
Hi Paolo,

today you are getting the pull request from me :)


this request has:

* First part of deferred teardown (Claudio)
* CPU Topology (Pierre)
* interpretive execution for PCI instructions (Matthew)
* PV attestation (Steffen)
* Minor fixes 


Please pull


The following changes since commit 4b88b1a518b337de1252b8180519ca4c00015c9e:

  KVM: selftests: Enhance handling WRMSR ICR register in x2APIC mode (2022-06-24 04:52:04 -0400)

are available in the Git repository at:

  ssh://git@gitolite.kernel.org/pub/scm/linux/kernel/git/kvms390/linux.git tags/kvm-s390-next-5.20-1

for you to fetch changes up to f5ecfee94493475783074e86ded10a0499d779fc:

  KVM: s390: resetting the Topology-Change-Report (2022-07-20 10:57:37 +0200)

----------------------------------------------------------------
KVM: s390x: Fixes and features for 5.20

* First part of deferred teardown
* CPU Topology
* interpretive execution for PCI instructions
* PV attestation
* Minor fixes

----------------------------------------------------------------
Bagas Sanjaya (1):
      Documentation: kvm: extend KVM_S390_ZPCI_OP subheading underline

Christian Borntraeger (3):
      Merge tag 'kvm-s390-pci-5.20' into kernelorgnext
      KVM: s390/pci: fix include duplicates
      KVM: s390: Add facility 197 to the allow list

Claudio Imbrenda (12):
      KVM: s390: pv: leak the topmost page table when destroy fails
      KVM: s390: pv: handle secure storage violations for protected guests
      KVM: s390: pv: handle secure storage exceptions for normal guests
      KVM: s390: pv: refactor s390_reset_acc
      KVM: s390: pv: usage counter instead of flag
      KVM: s390: pv: add export before import
      KVM: s390: pv: clear the state without memset
      KVM: s390: pv: Add kvm_s390_cpus_from_pv to kvm-s390.h and add documentation
      KVM: s390: pv: add mmu_notifier
      s390/mm: KVM: pv: when tearing down, try to destroy protected pages
      KVM: s390: pv: refactoring of kvm_s390_pv_deinit_vm
      KVM: s390: pv: destroy the configuration before its memory

Jiang Jian (1):
      KVM: s390: drop unexpected word 'and' in the comments

Matthew Rosato (21):
      s390/sclp: detect the zPCI load/store interpretation facility
      s390/sclp: detect the AISII facility
      s390/sclp: detect the AENI facility
      s390/sclp: detect the AISI facility
      s390/airq: pass more TPI info to airq handlers
      s390/airq: allow for airq structure that uses an input vector
      s390/pci: externalize the SIC operation controls and routine
      s390/pci: stash associated GISA designation
      s390/pci: stash dtsm and maxstbl
      vfio/pci: introduce CONFIG_VFIO_PCI_ZDEV_KVM
      KVM: s390: pci: add basic kvm_zdev structure
      KVM: s390: pci: do initial setup for AEN interpretation
      KVM: s390: pci: enable host forwarding of Adapter Event Notifications
      KVM: s390: mechanism to enable guest zPCI Interpretation
      KVM: s390: pci: provide routines for enabling/disabling interrupt forwarding
      KVM: s390: pci: add routines to start/stop interpretive execution
      vfio-pci/zdev: add open/close device hooks
      vfio-pci/zdev: add function handle to clp base capability
      vfio-pci/zdev: different maxstbl for interpreted devices
      KVM: s390: add KVM_S390_ZPCI_OP to manage guest zPCI devices
      MAINTAINERS: additional files related kvm s390 pci passthrough

Nico Boehr (1):
      KVM: s390: pv: don't present the ecall interrupt twice

Pierre Morel (3):
      KVM: s390: Cleanup ipte lock access and SIIF facility checks
      KVM: s390: guest support for topology function
      KVM: s390: resetting the Topology-Change-Report

Steffen Eiden (1):
      s390: Add attestation query information

 Documentation/virt/kvm/api.rst      |  71 ++++
 MAINTAINERS                         |   1 +
 arch/s390/boot/uv.c                 |   2 +
 arch/s390/include/asm/airq.h        |   7 +-
 arch/s390/include/asm/gmap.h        |  39 +-
 arch/s390/include/asm/kvm_host.h    |  43 ++-
 arch/s390/include/asm/mmu.h         |   2 +-
 arch/s390/include/asm/mmu_context.h |   2 +-
 arch/s390/include/asm/pci.h         |  11 +
 arch/s390/include/asm/pci_clp.h     |   9 +-
 arch/s390/include/asm/pci_insn.h    |  29 +-
 arch/s390/include/asm/pgtable.h     |  21 +-
 arch/s390/include/asm/sclp.h        |   4 +
 arch/s390/include/asm/tpi.h         |  13 +
 arch/s390/include/asm/uv.h          |   8 +-
 arch/s390/include/uapi/asm/kvm.h    |   1 +
 arch/s390/kernel/uv.c               | 103 ++++++
 arch/s390/kvm/Kconfig               |   1 +
 arch/s390/kvm/Makefile              |   1 +
 arch/s390/kvm/gaccess.c             |  96 ++---
 arch/s390/kvm/gaccess.h             |   6 +-
 arch/s390/kvm/intercept.c           |  15 +
 arch/s390/kvm/interrupt.c           |  98 ++++-
 arch/s390/kvm/kvm-s390.c            | 211 ++++++++++-
 arch/s390/kvm/kvm-s390.h            |  11 +
 arch/s390/kvm/pci.c                 | 690 ++++++++++++++++++++++++++++++++++++
 arch/s390/kvm/pci.h                 |  87 +++++
 arch/s390/kvm/priv.c                |  26 +-
 arch/s390/kvm/pv.c                  |  71 +++-
 arch/s390/kvm/sigp.c                |   4 +-
 arch/s390/kvm/vsie.c                |   8 +
 arch/s390/mm/fault.c                |  23 +-
 arch/s390/mm/gmap.c                 | 177 +++++++--
 arch/s390/pci/pci.c                 |  16 +
 arch/s390/pci/pci_clp.c             |   7 +
 arch/s390/pci/pci_insn.c            |   4 +-
 arch/s390/pci/pci_irq.c             |  48 +--
 arch/s390/tools/gen_facilities.c    |   1 +
 drivers/s390/char/sclp_early.c      |   4 +
 drivers/s390/cio/airq.c             |  12 +-
 drivers/s390/cio/qdio_thinint.c     |   6 +-
 drivers/s390/crypto/ap_bus.c        |   9 +-
 drivers/s390/virtio/virtio_ccw.c    |   6 +-
 drivers/vfio/pci/Kconfig            |  11 +
 drivers/vfio/pci/Makefile           |   2 +-
 drivers/vfio/pci/vfio_pci_core.c    |  10 +-
 drivers/vfio/pci/vfio_pci_zdev.c    |  35 +-
 include/linux/sched/user.h          |   3 +-
 include/linux/vfio_pci_core.h       |  12 +-
 include/uapi/linux/kvm.h            |  32 ++
 include/uapi/linux/vfio_zdev.h      |   7 +
 51 files changed, 1944 insertions(+), 172 deletions(-)
 create mode 100644 arch/s390/kvm/pci.c
 create mode 100644 arch/s390/kvm/pci.h

Comments

Paolo Bonzini July 22, 2022, 7:17 a.m. UTC | #1
On 7/21/22 18:12, Claudio Imbrenda wrote:
> Hi Paolo,
> 
> today you are getting the pull request from me :)

I'll trust you. :)

> this request has:
> 
> * First part of deferred teardown (Claudio)
> * CPU Topology (Pierre)
> * interpretive execution for PCI instructions (Matthew)
> * PV attestation (Steffen)
> * Minor fixes
> 
> 
> Please pull
> 
> 
> The following changes since commit 4b88b1a518b337de1252b8180519ca4c00015c9e:
> 
>    KVM: selftests: Enhance handling WRMSR ICR register in x2APIC mode (2022-06-24 04:52:04 -0400)
> 
> are available in the Git repository at:
> 
>    ssh://git@gitolite.kernel.org/pub/scm/linux/kernel/git/kvms390/linux.git tags/kvm-s390-next-5.20-1

Pulled, but you need to setup separate remote.*.url and remote.*.pushurl 
configuration for git-request-pull to work.

Thanks,

Paolo
Christian Borntraeger July 22, 2022, 10:52 a.m. UTC | #2
Am 22.07.22 um 09:17 schrieb Paolo Bonzini:
> On 7/21/22 18:12, Claudio Imbrenda wrote:
>> Hi Paolo,
>>
>> today you are getting the pull request from me :)
> 
> I'll trust you. :)
> 
>> this request has:
>>
>> * First part of deferred teardown (Claudio)
>> * CPU Topology (Pierre)
>> * interpretive execution for PCI instructions (Matthew)
>> * PV attestation (Steffen)
>> * Minor fixes

As a reminder. There is a (trivial) conflict with vfio-next.
Might be worth mentioning when sending to Linus.