[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20241015164326.124987-1-imbrenda@linux.ibm.com>
Date: Tue, 15 Oct 2024 18:43:15 +0200
From: Claudio Imbrenda <imbrenda@...ux.ibm.com>
To: linux-kernel@...r.kernel.org
Cc: borntraeger@...ibm.com, nsg@...ux.ibm.com, nrb@...ux.ibm.com,
frankja@...ux.ibm.com, seiden@...ux.ibm.com, hca@...ux.ibm.com,
agordeev@...ux.ibm.com, gor@...ux.ibm.com,
gerald.schaefer@...ux.ibm.com, kvm@...r.kernel.org,
linux-s390@...r.kernel.org
Subject: [PATCH v3 00/11] s390/kvm: Handle guest-related program interrupts in KVM
This patchseries moves the handling of host program interrupts that
happen while a KVM guest is running into KVM itself.
All program interrupts that happen in the host while a KVM guest is
running are due to DAT exceptions. It is cleaner and more maintainable
to have KVM handle those.
As a side effect, some more cleanups is also possible.
Moreover, this series serves as a foundation for an upcoming series
that will further move as much s390 KVM memory managament as possible
into KVM itself, and away from the rest of the kernel.
Version 1 and 2 of this series were sent privately, which is also where
the various reviews and acks come from.
Claudio Imbrenda (8):
s390/entry: Remove __GMAP_ASCE and use _PIF_GUEST_FAULT again
s390/kvm: Remove kvm_arch_fault_in_page()
s390/mm/gmap: Refactor gmap_fault() and add support for pfault
s390/mm/gmap: Fix __gmap_fault() return code
s390/mm/fault: Handle guest-related program interrupts in KVM
s390/kvm: Stop using gmap_{en,dis}able()
s390/mm/gmap: Remove gmap_{en,dis}able()
s390: Remove gmap pointer from lowcore
Heiko Carstens (3):
s390/mm: Simplify get_fault_type()
s390/mm: Get rid of fault type switch statements
s390/mm: Convert to LOCK_MM_AND_FIND_VMA
arch/s390/Kconfig | 1 +
arch/s390/include/asm/gmap.h | 3 -
arch/s390/include/asm/kvm_host.h | 3 +
arch/s390/include/asm/lowcore.h | 3 +-
arch/s390/include/asm/processor.h | 5 +-
arch/s390/include/asm/ptrace.h | 2 +
arch/s390/kernel/asm-offsets.c | 3 -
arch/s390/kernel/entry.S | 44 ++-----
arch/s390/kernel/traps.c | 23 +++-
arch/s390/kvm/intercept.c | 4 +-
arch/s390/kvm/kvm-s390.c | 139 ++++++++++++++-------
arch/s390/kvm/kvm-s390.h | 8 +-
arch/s390/kvm/vsie.c | 17 ++-
arch/s390/mm/fault.c | 195 +++++-------------------------
arch/s390/mm/gmap.c | 151 +++++++++++++++--------
15 files changed, 278 insertions(+), 323 deletions(-)
--
2.47.0
Powered by blists - more mailing lists