1
0
Fork 0
remarkable-linux/virt/kvm
Sheng Yang fae3a3536a KVM: Fix possible circular locking in kvm_vm_ioctl_assign_device()
One possible order is:

KVM_CREATE_IRQCHIP ioctl(took kvm->lock) -> kvm_iobus_register_dev() ->
down_write(kvm->slots_lock).

The other one is in kvm_vm_ioctl_assign_device(), which take kvm->slots_lock
first, then kvm->lock.

Update the comment of lock order as well.

Observe it due to kernel locking debug warnings.

Cc: stable@kernel.org
Signed-off-by: Sheng Yang <sheng@linux.intel.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
2009-12-27 13:36:31 -02:00
..
Kconfig KVM: Break dependency between vcpu index in vcpus array and vcpu_id. 2009-09-10 08:32:52 +03:00
assigned-dev.c KVM: Fix possible circular locking in kvm_vm_ioctl_assign_device() 2009-12-27 13:36:31 -02:00
coalesced_mmio.c KVM: make io_bus interface more robust 2009-09-10 08:33:12 +03:00
coalesced_mmio.h KVM: move coalesced_mmio locking to its own device 2009-09-10 08:32:49 +03:00
eventfd.c KVM: Drop kvm->irq_lock lock from irq injection path 2009-12-03 09:32:08 +02:00
ioapic.c KVM: Move IO APIC to its own lock 2009-12-03 09:32:08 +02:00
ioapic.h KVM: Move IO APIC to its own lock 2009-12-03 09:32:08 +02:00
iodev.h KVM: remove in_range from io devices 2009-09-10 08:33:05 +03:00
iommu.c KVM: Enable snooping control for supported hardware 2009-06-10 11:48:50 +03:00
irq_comm.c KVM: only clear irq_source_id if irqchip is present 2009-12-03 09:32:23 +02:00
kvm_main.c KVM: Fix possible circular locking in kvm_vm_ioctl_assign_device() 2009-12-27 13:36:31 -02:00