]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
KVM: s390: Introduce import_lock
authorClaudio Imbrenda <imbrenda@linux.ibm.com>
Wed, 4 Feb 2026 15:02:35 +0000 (16:02 +0100)
committerClaudio Imbrenda <imbrenda@linux.ibm.com>
Wed, 4 Feb 2026 16:00:08 +0000 (17:00 +0100)
Introduce import_lock to avoid future races when converting pages to
secure.

Acked-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Claudio Imbrenda <imbrenda@linux.ibm.com>
arch/s390/include/asm/kvm_host.h
arch/s390/kvm/kvm-s390.c

index ae1223264d3cd34f2f1777d2bec739e2bbf6a6bf..3dbddb7c60a99c794839fbf447623d0a8effed83 100644 (file)
@@ -630,6 +630,8 @@ struct kvm_s390_pv {
        void *set_aside;
        struct list_head need_cleanup;
        struct mmu_notifier mmu_notifier;
+       /* Protects against concurrent import-like operations */
+       struct mutex import_lock;
 };
 
 struct kvm_arch {
index 56a50524b3eee4e17b5b8a5833c2a560d120c443..cd39b2f099ca7714d3bf1c21a761ec399b124623 100644 (file)
@@ -3330,6 +3330,8 @@ int kvm_arch_init_vm(struct kvm *kvm, unsigned long type)
        char debug_name[16];
        int i, rc;
 
+       mutex_init(&kvm->arch.pv.import_lock);
+
        rc = -EINVAL;
 #ifdef CONFIG_KVM_S390_UCONTROL
        if (type & ~KVM_VM_S390_UCONTROL)