summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorAlex Williamson <alex.williamson@redhat.com>2012-06-25 09:40:39 -0600
committerMarcelo Tosatti <mtosatti@redhat.com>2012-06-29 20:02:27 -0300
commitdf410675e5fad55e056fb505cba3a62cac13c411 (patch)
treeb65050696cdf5248e311fd1cd45881c0e6d87085
parent71ea2e016131a9fcde6f1ffd3e0e34a64c21f593 (diff)
downloadfocaccia-qemu-df410675e5fad55e056fb505cba3a62cac13c411.tar.gz
focaccia-qemu-df410675e5fad55e056fb505cba3a62cac13c411.zip
kvm: Don't abort on kvm_irqchip_add_msi_route()
Anyone using these functions has to be prepared that irqchip
support may not be present.  It shouldn't be up to the core
code to determine whether this is a fatal error.  Currently
code written as:

virq = kvm_irqchip_add_msi_route(...)
if (virq < 0) {
    <slow path>
} else {
    <fast path>
}

works on x86 with and without kvm irqchip enabled, works
without kvm support compiled in, but aborts() on !x86 with
kvm support.

Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
Acked-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
-rw-r--r--kvm-all.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/kvm-all.c b/kvm-all.c
index f8e432841f..a0c33b38de 100644
--- a/kvm-all.c
+++ b/kvm-all.c
@@ -1142,7 +1142,7 @@ int kvm_irqchip_send_msi(KVMState *s, MSIMessage msg)
 
 int kvm_irqchip_add_msi_route(KVMState *s, MSIMessage msg)
 {
-    abort();
+    return -ENOSYS;
 }
 
 static int kvm_irqchip_assign_irqfd(KVMState *s, int fd, int virq, bool assign)