Re: [PATCH] KVM: fix spin_lock_init order on x86

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 21/03/2016 16:19, Paolo Bonzini wrote:
>>> >> +	spin_lock_init(&kvm->mmu_lock);
>>> >> +	kvm->mm = current->mm;
>>> >> +	atomic_inc(&kvm->mm->mm_count);
>> > 
>> > current->mm->mm_count is incremented here.
>> > 
>>> >> +	kvm_eventfd_init(kvm);
>>> >> +	mutex_init(&kvm->lock);
>>> >> +	mutex_init(&kvm->irq_lock);
>>> >> +	mutex_init(&kvm->slots_lock);
>>> >> +	atomic_set(&kvm->users_count, 1);
>>> >> +	INIT_LIST_HEAD(&kvm->devices);
>>> >> +
>>> >>  	r = kvm_arch_init_vm(kvm, type);
>>> >>  	if (r)
>>> >>  		goto out_err_no_disable;
>> > 
>> > 
>> > But out_err_no_disable wont decrement it in case of an error.
>> > 
>> > This is not clear to me where the cleanup is done ?
> Indeed, a slightly more complex patch is necessary.  Will try again,
> this time not doing this as the first thing in the morning.

And not even _that_ more complex, just a single mmdrop is necessary.
The mmdrop in fact was absent even before the patch, and the patch
actually makes it easier to fix the lack of mmdrop.  Meaning it now
qualifies for stable.

Paolo
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux