From: Alex Williamson <alex.william...@redhat.com>

Since c1699988, piix config space isn't programmed until the first
system reset.  This means that when we call assign_irq() from
assigned_initfn(), we're going to get back an irq of 0x0, which
unfortunately matches our initialization value, so we don't bother
to call kvm_assign_irq().  Switch to a -1 initializer so we can
test whether kvm_assign_irq() is going to succeed and allow the
process to exit if it doesn't.  The guest irq will get reset to a
more appropriate value on system reset anyway.

Signed-off-by: Alex Williamson <alex.william...@redhat.com>
Acked-by: Chris Wright <chr...@redhat.com>
Signed-off-by: Marcelo Tosatti <mtosa...@redhat.com>

diff --git a/hw/device-assignment.c b/hw/device-assignment.c
index b9cc06f..eb31c78 100644
--- a/hw/device-assignment.c
+++ b/hw/device-assignment.c
@@ -1346,7 +1346,7 @@ static int assigned_initfn(struct PCIDevice *pci_dev)
     e_intx = dev->dev.config[0x3d] - 1;
     dev->intpin = e_intx;
     dev->run = 0;
-    dev->girq = 0;
+    dev->girq = -1;
     dev->h_segnr = dev->host.seg;
     dev->h_busnr = dev->host.bus;
     dev->h_devfn = PCI_DEVFN(dev->host.dev, dev->host.func);
--
To unsubscribe from this list: send the line "unsubscribe kvm-commits" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to