diff mbox

Fix -M isapc irq routing

Message ID 1252423870-19798-1-git-send-email-kraxel@redhat.com
State Superseded
Headers show

Commit Message

Gerd Hoffmann Sept. 8, 2009, 3:31 p.m. UTC
Only send irqs to ioapic in case we have one.
Fixes qemu segfault.

Linux kernel still needs explicit noapic noacpi on the kernel cmd line
to boot.  Do we need a different bios for isapc?  Or a fw_cfg knob to
turn off all the modern stuff (apic, acpi, smp, ...)?

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
 hw/pc.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)
diff mbox

Patch

diff --git a/hw/pc.c b/hw/pc.c
index 6292001..9af0cdb 100644
--- a/hw/pc.c
+++ b/hw/pc.c
@@ -100,7 +100,8 @@  static void isa_irq_handler(void *opaque, int n, int level)
     if (n < 16) {
         qemu_set_irq(isa->i8259[n], level);
     }
-    qemu_set_irq(isa->ioapic[n], level);
+    if (isa->ioapic)
+        qemu_set_irq(isa->ioapic[n], level);
 };
 
 static void ioport80_write(void *opaque, uint32_t addr, uint32_t data)