summaryrefslogtreecommitdiffstats
path: root/arch/x86/kvm/ioapic.c
diff options
context:
space:
mode:
authorDavid Hildenbrand <david@redhat.com>2017-04-07 10:50:29 +0200
committerRadim Krčmář <rkrcmar@redhat.com>2017-04-12 20:17:14 +0200
commit49f520b99af13d8cafec6f227dabf6acf236c887 (patch)
tree77f3f236c2515ba918acca6001f30e6f64366fc6 /arch/x86/kvm/ioapic.c
parentKVM: x86: don't take kvm->irq_lock when creating IRQCHIP (diff)
downloadlinux-49f520b99af13d8cafec6f227dabf6acf236c887.tar.xz
linux-49f520b99af13d8cafec6f227dabf6acf236c887.zip
KVM: x86: push usage of slots_lock down
Let's just move it to the place where it is actually needed. Signed-off-by: David Hildenbrand <david@redhat.com> Signed-off-by: Radim Krčmář <rkrcmar@redhat.com>
Diffstat (limited to 'arch/x86/kvm/ioapic.c')
-rw-r--r--arch/x86/kvm/ioapic.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/x86/kvm/ioapic.c b/arch/x86/kvm/ioapic.c
index 10941a6d0e62..6e1d8cbe2fd9 100644
--- a/arch/x86/kvm/ioapic.c
+++ b/arch/x86/kvm/ioapic.c
@@ -637,7 +637,9 @@ void kvm_ioapic_destroy(struct kvm *kvm)
return;
cancel_delayed_work_sync(&ioapic->eoi_inject);
+ mutex_lock(&kvm->slots_lock);
kvm_io_bus_unregister_dev(kvm, KVM_MMIO_BUS, &ioapic->dev);
+ mutex_unlock(&kvm->slots_lock);
kvm->arch.vioapic = NULL;
kfree(ioapic);
}