On Wed, 14 May 2025 18:34:48 +0200 Christoph Schlameuss <schlameuss@xxxxxxxxxxxxx> wrote: > All modern IBM Z and Linux One machines do offer support for the > Extended System Control Area (ESCA). The ESCA is available since the > z114/z196 released in 2010. > KVM needs to allocate and manage the SCA for guest VMs. Prior to this > change the SCA was setup as Basic SCA only supporting a maximum of 64 > vCPUs when initializing the VM. With addition of the 65th vCPU the SCA > was needed to be converted to a ESCA. > > Instead we will now allocate the ESCA directly upon VM creation > simplifying the code in multiple places as well as completely removing > the need to convert an existing SCA. > > In cases where the ESCA is not supported (z10 and earlier) the use of > the SCA entries and with that SIGP interpretation are disabled for VMs. > This increases the number of exits from the VM in multiprocessor > scenarios and thus decreases performance. > > Signed-off-by: Christoph Schlameuss <schlameuss@xxxxxxxxxxxxx> > --- > Christoph Schlameuss (3): > KVM: s390: Set KVM_MAX_VCPUS to 256 > KVM: s390: Always allocate esca_block > KVM: s390: Specify kvm->arch.sca as esca_block > > arch/s390/include/asm/kvm_host.h | 7 +- > arch/s390/include/asm/kvm_host_types.h | 2 + > arch/s390/kvm/gaccess.c | 10 +- > arch/s390/kvm/interrupt.c | 74 +++++---------- > arch/s390/kvm/kvm-s390.c | 161 ++++++--------------------------- > arch/s390/kvm/kvm-s390.h | 9 +- > 6 files changed, 57 insertions(+), 206 deletions(-) I really like that you are removing more lines than you are adding :) > --- > base-commit: 82f2b0b97b36ee3fcddf0f0780a9a0825d52fec3 > change-id: 20250513-rm-bsca-ab1e8649aca7 > > Best regards,