diff options
author | Wanpeng Li <wanpeng.li@hotmail.com> | 2016-09-23 11:47:36 +0800 |
---|---|---|
committer | Dr. David Alan Gilbert <dgilbert@redhat.com> | 2016-10-04 17:16:15 +0100 |
commit | 456d97d364e34adc4e68cbd51c2ad6ecd548492d (patch) | |
tree | 34e0c9d503e9427cf4c0f120b0779dd207388270 /target-i386 | |
parent | bbc4c3f4f3c624e2de64fdcb79f4dd8c1a508e9d (diff) |
hmp: fix qemu crash due to ioapic state dump w/ split irqchip
The qemu will crash when info ioapic through hmp if irqchip
is split. Below message is splat:
KVM_GET_IRQCHIP failed: Unknown error -6
This patch fix it by dumping the ioapic state from the qemu
emulated ioapic if irqchip is split.
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: Richard Henderson <rth@twiddle.net>
Cc: Eduardo Habkost <ehabkost@redhat.com>
Signed-off-by: Wanpeng Li <wanpeng.li@hotmail.com>
Message-Id: <1474602456-3232-1-git-send-email-wanpeng.li@hotmail.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
Message-ID: <20160923090824.GF15411@pxdev.xzpeter.org>
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Diffstat (limited to 'target-i386')
-rw-r--r-- | target-i386/monitor.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/target-i386/monitor.c b/target-i386/monitor.c index fccfe40ab7..9a3b4d746e 100644 --- a/target-i386/monitor.c +++ b/target-i386/monitor.c @@ -504,7 +504,8 @@ void hmp_info_local_apic(Monitor *mon, const QDict *qdict) void hmp_info_io_apic(Monitor *mon, const QDict *qdict) { - if (kvm_irqchip_in_kernel()) { + if (kvm_irqchip_in_kernel() && + !kvm_irqchip_is_split()) { kvm_ioapic_dump_state(mon, qdict); } else { ioapic_dump_state(mon, qdict); |