From: Paolo Bonzini Date: Tue, 2 Dec 2025 17:58:47 +0000 (+0100) Subject: Merge tag 'kvm-s390-next-6.19-1' of https://git.kernel.org/pub/scm/linux/kernel/git... X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=e0c26d47def7382d7dbd9cad58bc653aed75737a;p=thirdparty%2Flinux.git Merge tag 'kvm-s390-next-6.19-1' of https://git.kernel.org/pub/scm/linux/kernel/git/kvms390/linux into HEAD - SCA rework - VIRT_XFER_TO_GUEST_WORK support - Operation exception forwarding support - Cleanups --- e0c26d47def7382d7dbd9cad58bc653aed75737a diff --cc Documentation/virt/kvm/api.rst index f38a0cfcbec5c,1bc2a84c59ee7..01a3abef8abb9 --- a/Documentation/virt/kvm/api.rst +++ b/Documentation/virt/kvm/api.rst @@@ -8738,18 -8703,21 +8738,33 @@@ This capability indicate to the userspa can be safely mapped as cacheable. This relies on the presence of force write back (FWB) feature support on the hardware. -7.45 KVM_CAP_S390_USER_OPEREXEC +7.45 KVM_CAP_ARM_SEA_TO_USER +---------------------------- + +:Architecture: arm64 +:Target: VM +:Parameters: none +:Returns: 0 on success, -EINVAL if unsupported. + +When this capability is enabled, KVM may exit to userspace for SEAs taken to +EL2 resulting from a guest access. See ``KVM_EXIT_ARM_SEA`` for more +information. + ++7.46 KVM_CAP_S390_USER_OPEREXEC + ------------------------------- + + :Architectures: s390 + :Parameters: none + + When this capability is enabled KVM forwards all operation exceptions + that it doesn't handle itself to user space. This also includes the + 0x0000 instructions managed by KVM_CAP_S390_USER_INSTR0. This is + helpful if user space wants to emulate instructions which are not + (yet) implemented in hardware. + + This capability can be enabled dynamically even if VCPUs were already + created and are running. + 8. Other capabilities. ====================== diff --cc include/uapi/linux/kvm.h index 1e541193e98d3,8ab07396ce3b0..dddb781b0507d --- a/include/uapi/linux/kvm.h +++ b/include/uapi/linux/kvm.h @@@ -972,7 -963,7 +972,8 @@@ struct kvm_enable_cap #define KVM_CAP_RISCV_MP_STATE_RESET 242 #define KVM_CAP_ARM_CACHEABLE_PFNMAP_SUPPORTED 243 #define KVM_CAP_GUEST_MEMFD_FLAGS 244 -#define KVM_CAP_S390_USER_OPEREXEC 245 +#define KVM_CAP_ARM_SEA_TO_USER 245 ++#define KVM_CAP_S390_USER_OPEREXEC 246 struct kvm_irq_routing_irqchip { __u32 irqchip;