Thread (51 messages) 51 messages, 10 authors, 2021-12-03

Re: [RFC v2 PATCH 09/13] KVM: Introduce kvm_memfd_invalidate_range

From: Paolo Bonzini <pbonzini@redhat.com>
Date: 2021-11-23 08:46:57
Also in: kvm, linux-fsdevel, lkml, qemu-devel

On 11/19/21 14:47, Chao Peng wrote:
+
+	/* Prevent memslot modification */
+	spin_lock(&kvm->mn_invalidate_lock);
+	kvm->mn_active_invalidate_count++;
+	spin_unlock(&kvm->mn_invalidate_lock);
+
+	ret = __kvm_handle_useraddr_range(kvm, &useraddr_range);
+
+	spin_lock(&kvm->mn_invalidate_lock);
+	kvm->mn_active_invalidate_count--;
+	spin_unlock(&kvm->mn_invalidate_lock);
+

You need to follow this with a rcuwait_wake_up as in 
kvm_mmu_notifier_invalidate_range_end.

It's probably best if you move the manipulations of 
mn_active_invalidate_count from kvm_mmu_notifier_invalidate_range_* to 
two separate functions.

Paolo
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help