[GIT PULL] KVM: s390: Features and Fixes for 7.3
Christian Borntraeger <[email protected]>
| Newsgroups | org.kernel.vger.kvm,org.kernel.vger.linux-s390 |
|---|---|
| Message-ID | <[email protected]> |
Paolo,
large chunk of s390 fixes and feature without patches as reply due to
the large number. Series is on top of v7.2-rc2 but I merged
kvms390/master to pick up additional fixes that came too late for 7.2.
Of course also other patches/fixes directly on top. This automatically
contains all the previous s390 fixes for 7.2, but this will reduce merge
conflict potentials, so I see it rather on the plus side.
I made the pull request statistics on top of rc7.
sashiko reviews for the patches
1. Fixes for vfio-ap
https://sashiko.dev/#/patchset/20260812200240.818004-1-akrowiak%40linux.ibm.com without patch9
https://sashiko.dev/#/patchset/20260806173435.105044-1-akrowiak%40linux.ibm.com
2. Fixes from Claudio
https://sashiko.dev/#/patchset/20260812104436.109741-1-imbrenda%40linux.ibm.com without patches 4 and 9
3. vsie Fixes from Christoph
https://sashiko.dev/#/patchset/20260807-vsie-cleanup-202607-v1-0-b18659b55e3d%40linux.ibm.com
4. diag 9c tracing from Ciunas
https://sashiko.dev/#/patchset/20260724103959.14861-1-ciunas%40linux.ibm.com
5. enable CONTEXT_ANALYSIS for cio and virtio from Heiko
https://sashiko.dev/#/patchset/20260806153849.2622576-1-hca%40linux.ibm.com
6. move KVM code to prepare for additional arm64 support
https://sashiko.dev/#/patchset/20260812153631.3376090-1-seiden%40linux.ibm.com (patches12-21 only)
7. AI triggered fixes all over by me
https://sashiko.dev/#/patchset/20260811153738.206885-1-borntraeger%40linux.ibm.com
https://sashiko.dev/#/patchset/20260805110455.7200-1-borntraeger%40linux.ibm.com
--
2.53.0
The following changes since commit feadc5e84dcb53422a437556c35af9efd9826fd5:
KVM: s390: Fix cleanup in kvm_s390_pv_create_cpu() (2026-08-03 17:09:46 +0200)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/kvms390/linux.git tags/kvm-s390-next-7.3-1
for you to fetch changes up to dd6f4ef6f8a37412909ad787c837332fb070159c:
s390/vfio-ap: Fix NULL deref in status_show() during queue probe (2026-08-13 16:04:33 +0200)
----------------------------------------------------------------
KVM: s390: Features and Fixes for 7.3
- merged kvms390/master to pick up additional fixes that came too late
for 7.2
- Fixes for vfio-ap
- Fixes for the gmap rework
- Fixes for vsie
- AI triggered fixes all over
- diag9c tracing
- code move preparation for the additional arm64 support
- enable CONTEXT_ANALYSIS
- update to vfio maintainer file location
----------------------------------------------------------------
Anthony Krowiak (9):
s390/vfio-ap: fix stale pqap_hook pointer on error in vfio_ap_mdev_set_kvm()
s390/vfio-ap: Fix stale do_remove flag across iterations in vfio_ap_mdev_cfg_remove
s390/vfio-ap: Fix dereference matrix_mdev->kvm without checking for NULL
s390/vfio-ap: Fix missing lock required to access list of ap_matrix_mdev objects
s390/vfio-ap: Fix required lock not held during update of ap_matrix_mdev object
s390/vfio-ap: Fix control domain removal in vfio_ap_mdev_cfg_remove
s390/vfio-ap: fix potential use of uninitialized apm_filtered bitmap
s390/vfio-ap: Fix hot-unplug skipped when last AP adapter or domain removed
s390/vfio-ap: Fix NULL deref in status_show() during queue probe
Christian Borntraeger (15):
KVM: s390: move some facilities from FACILITIES_KVM_CPUMODEL to FACILITIES_KVM
KVM: s390: Remove user triggerable WARN_ON
KVM: s390: Zero initialize data structures for inject_pfault_token
KVM: s390: Zero initialize irq in reinject_machine_check
KVM: s390: Fix memory leak in guest debug handling
KVM: s390: Fix old_data leak in guest debug error path
KVM: s390: Take srcu when importing watchpoint data
KVM: s390: Free guest debug data on vcpu destroy
KVM: s390: Fix length check __import_wp_info()
KVM: s390: Fix memory corruption by not reinjecting CK machine checks
KVM: s390: keyop: use mmu_lock to read gmap->asce
KVM: s390: vsie: zero stale crypto bits
KVM: s390: pv: Fix rc/rrc offset for PVM_DUMP
KVM: s390: Restore sigset on error path
Merge remote-tracking branch 'kvms390/master' into 'kvms390/next'
Christoph Schlameuss (6):
KVM: s390: Remove double 64bscao feature check
KVM: s390: vsie: Remove duplicate assertion
KVM: s390: vsie: Convert shift to phys_to_pfn()
KVM: s390: vsie: Assert mcck_info offset in vsie_page
KVM: s390: vsie: Assert crycb alignment in vsie_page
KVM: s390: vsie: Create constant SCB_ALIGNMENT_SHIFT
Ciunas Bennett (2):
KVM: s390: Refactor __diag_time_slice_end_directed for single exit point
KVM: s390: Add tracepoint for DIAG 9c directed yield operations
Claudio Imbrenda (7):
KVM: s390: Properly handle NULL pointer in dat_cond_set_storage_key()
KVM: s390: Use srcu in kvm_arch_vcpu_unlocked_ioctl()
KVM: s390: Fix get_all_floating_irqs()
KVM: s390: Fix pgste_get_trylock_multiple()
KVM: s390: Fix IRQ injection with SIGP Stop and Store Status
KVM: s390: Fix kvm_s390_clear_pv_state()
KVM: s390: Fix potential tiny kernel stack leak
Heiko Carstens (4):
MAINTAINERS: Update s390 specific vfio sections
s390/vfio_ccw: Add __must_hold() attribute to vfio_ccw_sch_quiesce()
s390/cio: Enable CONTEXT_ANALYSIS
s390/virtio: Enable CONTEXT_ANALYSIS
Steffen Eiden (10):
KVM: s390: Extract gmap tracing to a separate header
KVM: s390: Prepare include guards for a new location
KVM: s390: Rename kvm-s390.{c,h} to s390.{c,h}
KVM: s390: Move kvm_host definitions to kvm_host_s390
KVM: s390: Move s390 kvm code into a subdirectory
KVM: s390: Move PGM code definitions to asm/kvm_host.h
KVM: s390: Prepare gmap for a second KVM implementation
KVM: s390: gmap: Make storage keys optional
KVM: s390: gmap: Make CMMA optional
KVM: s390: gmap: Make prefix handling optional
MAINTAINERS | 8 +-
arch/s390/include/asm/kvm_host.h | 723 +--------------------------
arch/s390/include/asm/kvm_host_s390.h | 729 ++++++++++++++++++++++++++++
arch/s390/include/asm/kvm_host_s390_types.h | 349 +++++++++++++
arch/s390/include/asm/kvm_host_types.h | 347 +------------
arch/s390/include/asm/nmi.h | 3 +
arch/s390/kernel/nmi.c | 5 +-
arch/s390/kvm/Makefile | 11 +-
arch/s390/kvm/gmap/Makefile | 5 +
arch/s390/kvm/{ => gmap}/dat.c | 17 +-
arch/s390/kvm/{ => gmap}/dat.h | 21 +-
arch/s390/kvm/{ => gmap}/faultin.c | 3 +-
arch/s390/kvm/{ => gmap}/faultin.h | 6 +-
arch/s390/kvm/{ => gmap}/gmap.c | 19 +-
arch/s390/kvm/{ => gmap}/gmap.h | 25 +-
arch/s390/kvm/gmap/kvm_mmu.c | 133 +++++
arch/s390/kvm/gmap/kvm_mmu.h | 18 +
arch/s390/kvm/gmap/trace_gmap.h | 47 ++
arch/s390/kvm/s390/Makefile | 14 +
arch/s390/kvm/{ => s390}/diag.c | 21 +-
arch/s390/kvm/{ => s390}/gaccess.c | 2 +-
arch/s390/kvm/{ => s390}/gaccess.h | 2 +-
arch/s390/kvm/{ => s390}/guestdbg.c | 11 +-
arch/s390/kvm/{ => s390}/intercept.c | 2 +-
arch/s390/kvm/{ => s390}/interrupt.c | 109 +++--
arch/s390/kvm/{ => s390}/pci.c | 2 +-
arch/s390/kvm/{ => s390}/pci.h | 0
arch/s390/kvm/{ => s390}/priv.c | 2 +-
arch/s390/kvm/{ => s390}/pv.c | 6 +-
arch/s390/kvm/{kvm-s390.c => s390/s390.c} | 159 ++----
arch/s390/kvm/{kvm-s390.h => s390/s390.h} | 10 +-
arch/s390/kvm/{ => s390}/sigp.c | 2 +-
arch/s390/kvm/{ => s390}/trace-s390.h | 0
arch/s390/kvm/{ => s390}/trace.h | 40 +-
arch/s390/kvm/{ => s390}/vsie.c | 22 +-
arch/s390/tools/gen_facilities.c | 14 +-
drivers/s390/cio/Makefile | 2 +
drivers/s390/cio/vfio_ccw_drv.c | 1 +
drivers/s390/cio/vfio_ccw_private.h | 3 +-
drivers/s390/crypto/vfio_ap_ops.c | 203 +++++---
drivers/s390/virtio/Makefile | 2 +
41 files changed, 1703 insertions(+), 1395 deletions(-)
create mode 100644 arch/s390/include/asm/kvm_host_s390.h
create mode 100644 arch/s390/include/asm/kvm_host_s390_types.h
create mode 100644 arch/s390/kvm/gmap/Makefile
rename arch/s390/kvm/{ => gmap}/dat.c (99%)
rename arch/s390/kvm/{ => gmap}/dat.h (98%)
rename arch/s390/kvm/{ => gmap}/faultin.c (98%)
rename arch/s390/kvm/{ => gmap}/faultin.h (96%)
rename arch/s390/kvm/{ => gmap}/gmap.c (99%)
rename arch/s390/kvm/{ => gmap}/gmap.h (96%)
create mode 100644 arch/s390/kvm/gmap/kvm_mmu.c
create mode 100644 arch/s390/kvm/gmap/kvm_mmu.h
create mode 100644 arch/s390/kvm/gmap/trace_gmap.h
create mode 100644 arch/s390/kvm/s390/Makefile
rename arch/s390/kvm/{ => s390}/diag.c (96%)
rename arch/s390/kvm/{ => s390}/gaccess.c (99%)
rename arch/s390/kvm/{ => s390}/gaccess.h (99%)
rename arch/s390/kvm/{ => s390}/guestdbg.c (98%)
rename arch/s390/kvm/{ => s390}/intercept.c (99%)
rename arch/s390/kvm/{ => s390}/interrupt.c (98%)
rename arch/s390/kvm/{ => s390}/pci.c (99%)
rename arch/s390/kvm/{ => s390}/pci.h (100%)
rename arch/s390/kvm/{ => s390}/priv.c (99%)
rename arch/s390/kvm/{ => s390}/pv.c (99%)
rename arch/s390/kvm/{kvm-s390.c => s390/s390.c} (97%)
rename arch/s390/kvm/{kvm-s390.h => s390/s390.h} (98%)
rename arch/s390/kvm/{ => s390}/sigp.c (99%)
rename arch/s390/kvm/{ => s390}/trace-s390.h (100%)
rename arch/s390/kvm/{ => s390}/trace.h (95%)
rename arch/s390/kvm/{ => s390}/vsie.c (98%)