[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250918132215.16700-1-pbonzini@redhat.com>
Date: Thu, 18 Sep 2025 15:22:15 +0200
From: Paolo Bonzini <pbonzini@...hat.com>
To: torvalds@...ux-foundation.org
Cc: linux-kernel@...r.kernel.org,
kvm@...r.kernel.org
Subject: [GIT PULL] KVM changes for Linux 6.17-rc7
Linus,
The following changes since commit f83ec76bf285bea5727f478a68b894f5543ca76e:
Linux 6.17-rc6 (2025-09-14 14:21:14 -0700)
are available in the Git repository at:
https://git.kernel.org/pub/scm/virt/kvm/kvm.git tags/for-linus
for you to fetch changes up to ecd42dd170ea7bacdd9d01d8e74658df8dff621d:
Merge tag 'kvm-s390-master-6.17-1' of https://git.kernel.org/pub/scm/linux/kernel/git/kvms390/linux into HEAD (2025-09-17 19:45:21 +0200)
These are for the most Oliver's Arm changes: lock ordering fixes for the
vGIC, and reverts for a buggy attempt to avoid RCU stalls on large VMs.
----------------------------------------------------------------
Arm:
- Invalidate nested MMUs upon freeing the PGD to avoid WARNs when
visiting from an MMU notifier
- Fixes to the TLB match process and TLB invalidation range for
managing the VCNR pseudo-TLB
- Prevent SPE from erroneously profiling guests due to UNKNOWN reset
values in PMSCR_EL1
- Fix save/restore of host MDCR_EL2 to account for eagerly programming
at vcpu_load() on VHE systems
- Correct lock ordering when dealing with VGIC LPIs, avoiding scenarios
where an xarray's spinlock was nested with a *raw* spinlock
- Permit stage-2 read permission aborts which are possible in the case
of NV depending on the guest hypervisor's stage-2 translation
- Call raw_spin_unlock() instead of the internal spinlock API
- Fix parameter ordering when assigning VBAR_EL1
- Reverted a couple of fixes for RCU stalls when destroying a stage-2
page table. There appears to be some nasty refcounting / UAF issues
lurking in those patches and the band-aid we tried to apply didn't
hold.
s390:
- mm fixes, including userfaultfd bug fix
x86:
- Sync the vTPR from the local APIC to the VMCB even when AVIC is active.
This fixes a bug where host updates to the vTPR, e.g. via KVM_SET_LAPIC or
emulation of a guest access, are lost and result in interrupt delivery
issues in the guest.
----------------------------------------------------------------
Alexandru Elisei (2):
KVM: arm64: Initialize PMSCR_EL1 when in VHE
KVM: arm64: VHE: Save and restore host MDCR_EL2 value correctly
Alok Tiwari (1):
KVM: arm64: vgic: fix incorrect spinlock API usage
Claudio Imbrenda (2):
KVM: s390: Fix incorrect usage of mmu_notifier_register()
KVM: s390: Fix FOLL_*/FAULT_FLAG_* confusion
Dongha Lee (1):
KVM: arm64: nv: Fix incorrect VNCR invalidation range calculation
Fuad Tabba (1):
KVM: arm64: Fix parameter ordering for VBAR_EL1 assignment
Geonha Lee (1):
KVM: arm64: nv: fix VNCR TLB ASID match logic for non-Global entries
Maciej S. Szmigiero (1):
KVM: SVM: Sync TPR from LAPIC into VMCB::V_TPR even if AVIC is active
Marc Zyngier (1):
KVM: arm64: Mark freed S2 MMUs as invalid
Oliver Upton (8):
KVM: arm64: vgic: Drop stale comment on IRQ active state
KVM: arm64: vgic-v3: Use bare refcount for VGIC LPIs
KVM: arm64: Spin off release helper from vgic_put_irq()
KVM: arm64: vgic-v3: Erase LPIs from xarray outside of raw spinlocks
KVM: arm64: vgic-v3: Don't require IRQs be disabled for LPI xarray lock
KVM: arm64: vgic-v3: Indicate vgic_put_irq() may take LPI xarray lock
Revert "KVM: arm64: Reschedule as needed when destroying the stage-2 page-tables"
Revert "KVM: arm64: Split kvm_pgtable_stage2_destroy()"
Paolo Bonzini (3):
Merge tag 'kvmarm-fixes-6.17-2' of https://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into HEAD
Merge tag 'kvm-x86-fixes-6.17-rcN' of https://github.com/kvm-x86/linux into HEAD
Merge tag 'kvm-s390-master-6.17-1' of https://git.kernel.org/pub/scm/linux/kernel/git/kvms390/linux into HEAD
Thomas Huth (1):
KVM: s390: Fix access to unavailable adapter indicator pages during postcopy
Wei-Lin Chang (1):
KVM: arm64: Remove stage 2 read fault check
arch/arm64/include/asm/kvm_host.h | 1 +
arch/arm64/include/asm/kvm_pgtable.h | 30 -------------
arch/arm64/include/asm/kvm_pkvm.h | 4 +-
arch/arm64/kvm/arm.c | 4 +-
arch/arm64/kvm/debug.c | 13 ++++++
arch/arm64/kvm/hyp/include/hyp/switch.h | 5 ---
arch/arm64/kvm/hyp/nvhe/switch.c | 6 +++
arch/arm64/kvm/hyp/nvhe/sys_regs.c | 2 +-
arch/arm64/kvm/hyp/pgtable.c | 25 ++---------
arch/arm64/kvm/mmu.c | 45 +++----------------
arch/arm64/kvm/nested.c | 6 +--
arch/arm64/kvm/pkvm.c | 11 +----
arch/arm64/kvm/vgic/vgic-debug.c | 2 +-
arch/arm64/kvm/vgic/vgic-init.c | 6 +--
arch/arm64/kvm/vgic/vgic-its.c | 15 +++----
arch/arm64/kvm/vgic/vgic-v4.c | 2 +-
arch/arm64/kvm/vgic/vgic.c | 80 ++++++++++++++++++++++++---------
arch/arm64/kvm/vgic/vgic.h | 8 ++--
arch/s390/kvm/interrupt.c | 15 +++++--
arch/s390/kvm/kvm-s390.c | 24 +++++-----
arch/s390/kvm/pv.c | 16 ++++---
arch/x86/kvm/svm/svm.c | 3 +-
include/kvm/arm_vgic.h | 9 ++--
23 files changed, 155 insertions(+), 177 deletions(-)
Powered by blists - more mailing lists