From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:57837) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZdynG-0001EC-6D for qemu-devel@nongnu.org; Mon, 21 Sep 2015 06:58:02 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZdynE-0006vd-Ok for qemu-devel@nongnu.org; Mon, 21 Sep 2015 06:57:57 -0400 Received: from mailhub.sw.ru ([195.214.232.25]:40113 helo=relay.sw.ru) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZdynE-0006u2-CV for qemu-devel@nongnu.org; Mon, 21 Sep 2015 06:57:56 -0400 From: "Denis V. Lunev" Date: Mon, 21 Sep 2015 13:57:37 +0300 Message-Id: <1442833057-8186-10-git-send-email-den@openvz.org> In-Reply-To: <1442833057-8186-1-git-send-email-den@openvz.org> References: <1442833057-8186-1-git-send-email-den@openvz.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Subject: [Qemu-devel] [PATCH 9/9] hmp: implemented io apic dump state for TCG List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "Denis V. Lunev" , Paolo Bonzini , qemu-devel@nongnu.org, =?UTF-8?q?Andreas=20F=C3=A4rber?= , Pavel Butsykin From: Pavel Butsykin Added support emulator for the hmp command "info ioapic" Signed-off-by: Pavel Butsykin Signed-off-by: Denis V. Lunev CC: Paolo Bonzini CC: Andreas F=C3=A4rber --- hw/intc/ioapic.c | 12 ++++++++++++ include/hw/i386/pc.h | 1 + target-i386/monitor.c | 2 ++ 3 files changed, 15 insertions(+) diff --git a/hw/intc/ioapic.c b/hw/intc/ioapic.c index b527932..8c3aeae 100644 --- a/hw/intc/ioapic.c +++ b/hw/intc/ioapic.c @@ -20,6 +20,7 @@ * License along with this library; if not, see . */ =20 +#include "monitor/monitor.h" #include "hw/hw.h" #include "hw/i386/pc.h" #include "hw/i386/ioapic.h" @@ -137,6 +138,17 @@ void ioapic_eoi_broadcast(int vector) } } =20 +void ioapic_dump_state(Monitor *mon, const QDict *qdict) +{ + int i; + + for (i =3D 0; i < MAX_IOAPICS; i++) { + if (ioapics[i] !=3D 0) { + ioapic_print_redtbl(mon, ioapics[i]); + } + } +} + static uint64_t ioapic_mem_read(void *opaque, hwaddr addr, unsigned int size) { diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h index 539cf64..7c9f3a5 100644 --- a/include/hw/i386/pc.h +++ b/include/hw/i386/pc.h @@ -126,6 +126,7 @@ void hmp_info_irq(Monitor *mon, const QDict *qdict); /* ioapic.c */ =20 void kvm_ioapic_dump_state(Monitor *mon, const QDict *qdict); +void ioapic_dump_state(Monitor *mon, const QDict *qdict); =20 /* Global System Interrupts */ =20 diff --git a/target-i386/monitor.c b/target-i386/monitor.c index 829fff9..aac6b1b 100644 --- a/target-i386/monitor.c +++ b/target-i386/monitor.c @@ -505,5 +505,7 @@ void hmp_info_io_apic(Monitor *mon, const QDict *qdic= t) { if (kvm_irqchip_in_kernel()) { kvm_ioapic_dump_state(mon, qdict); + } else { + ioapic_dump_state(mon, qdict); } } --=20 2.1.4