summaryrefslogtreecommitdiffstats
path: root/virt/kvm/ioapic.h
diff options
context:
space:
mode:
authorWei Yongjun <yjwei@cn.fujitsu.com>2010-02-09 03:33:03 +0100
committerMarcelo Tosatti <mtosatti@redhat.com>2010-03-01 16:36:10 +0100
commit72bb2fcd23afe8db53b47e8f9edd736c517ba532 (patch)
treeb79884bcb50077fec7cb5615178cacbbf9e6ce04 /virt/kvm/ioapic.h
parentKVM: kvm->arch.vioapic should be NULL if kvm_ioapic_init() failure (diff)
downloadlinux-72bb2fcd23afe8db53b47e8f9edd736c517ba532.tar.xz
linux-72bb2fcd23afe8db53b47e8f9edd736c517ba532.zip
KVM: cleanup the failure path of KVM_CREATE_IRQCHIP ioctrl
If we fail to init ioapic device or the fail to setup the default irq routing, the device register by kvm_create_pic() and kvm_ioapic_init() remain unregister. This patch fixed to do this. Signed-off-by: Wei Yongjun <yjwei@cn.fujitsu.com> Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'virt/kvm/ioapic.h')
-rw-r--r--virt/kvm/ioapic.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/virt/kvm/ioapic.h b/virt/kvm/ioapic.h
index a505ce9054f3..8a751b78a430 100644
--- a/virt/kvm/ioapic.h
+++ b/virt/kvm/ioapic.h
@@ -72,6 +72,7 @@ int kvm_apic_match_dest(struct kvm_vcpu *vcpu, struct kvm_lapic *source,
int kvm_apic_compare_prio(struct kvm_vcpu *vcpu1, struct kvm_vcpu *vcpu2);
void kvm_ioapic_update_eoi(struct kvm *kvm, int vector, int trigger_mode);
int kvm_ioapic_init(struct kvm *kvm);
+void kvm_ioapic_destroy(struct kvm *kvm);
int kvm_ioapic_set_irq(struct kvm_ioapic *ioapic, int irq, int level);
void kvm_ioapic_reset(struct kvm_ioapic *ioapic);
int kvm_irq_delivery_to_apic(struct kvm *kvm, struct kvm_lapic *src,