KVM: use the correct RCU API for PROVE_RCU=y
[deliverable/linux.git] / arch / s390 / kvm / kvm-s390.h
index 06cce8285ba01883ee2e4f97a126ff6b50ea11d5..cfa9d1777457894ab96679cfe571084e24ba790f 100644 (file)
@@ -67,10 +67,14 @@ static inline long kvm_s390_vcpu_get_memsize(struct kvm_vcpu *vcpu)
 
 static inline void kvm_s390_vcpu_set_mem(struct kvm_vcpu *vcpu)
 {
+       int idx;
        struct kvm_memory_slot *mem;
+       struct kvm_memslots *memslots;
 
-       down_read(&vcpu->kvm->slots_lock);
-       mem = &vcpu->kvm->memslots[0];
+       idx = srcu_read_lock(&vcpu->kvm->srcu);
+       memslots = kvm_memslots(vcpu->kvm);
+
+       mem = &memslots->memslots[0];
 
        vcpu->arch.sie_block->gmsor = mem->userspace_addr;
        vcpu->arch.sie_block->gmslm =
@@ -78,7 +82,7 @@ static inline void kvm_s390_vcpu_set_mem(struct kvm_vcpu *vcpu)
                (mem->npages << PAGE_SHIFT) +
                VIRTIODESCSPACE - 1ul;
 
-       up_read(&vcpu->kvm->slots_lock);
+       srcu_read_unlock(&vcpu->kvm->srcu, idx);
 }
 
 /* implemented in priv.c */
This page took 0.024885 seconds and 5 git commands to generate.