On Tue, Jan 23, 2024 at 04:48:19PM +0000, Sebastian Ene wrote: > The rule inside kvm enforces that the vcpu->mutex is taken *inside* > kvm->lock. The rule is violated by the pkvm_create_hyp_vm which acquires ^~~~~~~~~~~~~~~~~~ nit: always suffix function names with '()' > the kvm->lock while already holding the vcpu->mutex lock from > kvm_vcpu_ioctl. Follow the rule by taking the config lock while getting the > VM handle and make sure that this is cleaned on VM destroy under the > same lock. It is always better to describe a lock in terms of what data it protects, the critical section(s) are rather obvious here. Avoid the circular locking dependency altogether by protecting the hyp vm handle with the config_lock, much like we already do for other forms of VM-scoped data. > Signed-off-by: Sebastian Ene <sebastianene@xxxxxxxxxx> > Cc: stable@xxxxxxxxxxxxxxx nitpicks aside, this looks fine. Reviewed-by: Oliver Upton <oliver.upton@xxxxxxxxx> -- Thanks, Oliver