Re: [PATCH v13 11/35] KVM: Drop .on_unlock() mmu_notifier hook

From: Paolo Bonzini
Date: Mon Oct 30 2023 - 13:19:32 EST


On 10/27/23 20:21, Sean Christopherson wrote:
Drop the .on_unlock() mmu_notifer hook now that it's no longer used for
notifying arch code that memory has been reclaimed. Adding .on_unlock()
and invoking it *after* dropping mmu_lock was a terrible idea, as doing so
resulted in .on_lock() and .on_unlock() having divergent and asymmetric
behavior, and set future developers up for failure, i.e. all but asked for
bugs where KVM relied on using .on_unlock() to try to run a callback while
holding mmu_lock.

Opportunistically add a lockdep assertion in kvm_mmu_invalidate_end() to
guard against future bugs of this nature.

This is what David suggested to do in patch 3, FWIW.

Reviewed-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

Paolo

Reported-by: Isaku Yamahata <isaku.yamahata@xxxxxxxxx>
Link: https://lore.kernel.org/all/20230802203119.GB2021422@xxxxxxxxxxxxxxxxxxxxx
Signed-off-by: Sean Christopherson <seanjc@xxxxxxxxxx>
---