From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1LVa9f-0003Xc-7s for qemu-devel@nongnu.org; Fri, 06 Feb 2009 18:30:39 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1LVa9d-0003XP-Et for qemu-devel@nongnu.org; Fri, 06 Feb 2009 18:30:38 -0500 Received: from [199.232.76.173] (port=57879 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1LVa9d-0003XM-8x for qemu-devel@nongnu.org; Fri, 06 Feb 2009 18:30:37 -0500 Received: from fmmailgate03.web.de ([217.72.192.234]:60785) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1LVa9c-0004Tf-S4 for qemu-devel@nongnu.org; Fri, 06 Feb 2009 18:30:37 -0500 Message-ID: <498CC81B.2070407@web.de> Date: Sat, 07 Feb 2009 00:30:35 +0100 From: Jan Kiszka MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-15 Content-Transfer-Encoding: 7bit Sender: jan.kiszka@web.de Subject: [Qemu-devel] [RFC][PATCH] disable special ioapic inti0 routing Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel Cc: Anthony Liguori , Beth Kon , Avi Kivity This patch comes from the kvm tree and fixes the timer IRQ routing for me which is broken from the POV of certain Linux guest kernels. As I'm not up-to-date with the development around that problematic hunk, I'm leaving it to someone more deeply involved to sign this off. But please commit some fix. Thanks, Jan -------> From: Avi Kivity we don't support it yet (need bios support, and modifications to kernel irq routing). --- qemu/hw/apic.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/qemu/hw/apic.c b/qemu/hw/apic.c index df80444..f9ef995 100644 --- a/qemu/hw/apic.c +++ b/qemu/hw/apic.c @@ -1055,12 +1055,14 @@ void ioapic_set_irq(void *opaque, int vector, int level) { IOAPICState *s = opaque; +#if 0 /* ISA IRQs map to GSI 1-1 except for IRQ0 which maps * to GSI 2. GSI maps to ioapic 1-1. This is not * the cleanest way of doing it but it should work. */ if (vector == 0) vector = 2; +#endif if (vector >= 0 && vector < IOAPIC_NUM_PINS) { uint32_t mask = 1 << vector;