KVM: x86/mmu: Assert that correct locks are held for page write-tracking
authorSean Christopherson <seanjc@google.com>
Sat, 29 Jul 2023 01:35:31 +0000 (18:35 -0700)
committerPaolo Bonzini <pbonzini@redhat.com>
Thu, 31 Aug 2023 18:08:16 +0000 (14:08 -0400)
commite18c5429e0c4bf7b550211245dcbfc61e71a7e6f
tree62657b61e455e13008fd67d0f7e88057dfffc697
parent7b574863e71833b5a4907245c1d95e76d507b984
KVM: x86/mmu: Assert that correct locks are held for page write-tracking

When adding/removing gfns to/from write-tracking, assert that mmu_lock
is held for write, and that either slots_lock or kvm->srcu is held.
mmu_lock must be held for write to protect gfn_write_track's refcount,
and SRCU or slots_lock must be held to protect the memslot itself.

Tested-by: Yan Zhao <yan.y.zhao@intel.com>
Tested-by: Yongwei Ma <yongwei.ma@intel.com>
Link: https://lore.kernel.org/r/20230729013535.1070024-26-seanjc@google.com
Signed-off-by: Sean Christopherson <seanjc@google.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/mmu/page_track.c