]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - virt/kvm/kvm_main.c
KVM: document memory barriers for kvm->vcpus/kvm->online_vcpus
[karo-tx-linux.git] / virt / kvm / kvm_main.c
index 8dc4828f623f15259c95bf9c745c37566358fe58..d8db2f8fce9c7ab727fb5dfa957d5f7ba828fa42 100644 (file)
@@ -2206,6 +2206,11 @@ static int kvm_vm_ioctl_create_vcpu(struct kvm *kvm, u32 id)
        }
 
        kvm->vcpus[atomic_read(&kvm->online_vcpus)] = vcpu;
+
+       /*
+        * Pairs with smp_rmb() in kvm_get_vcpu.  Write kvm->vcpus
+        * before kvm->online_vcpu's incremented value.
+        */
        smp_wmb();
        atomic_inc(&kvm->online_vcpus);