|
@@ -1961,10 +1961,11 @@ int kvm_irqchip_send_msi(KVMState *s, MSIMessage msg)
|
|
|
return kvm_set_irq(s, route->kroute.gsi, 1);
|
|
|
}
|
|
|
|
|
|
-int kvm_irqchip_add_msi_route(KVMState *s, int vector, PCIDevice *dev)
|
|
|
+int kvm_irqchip_add_msi_route(KVMRouteChange *c, int vector, PCIDevice *dev)
|
|
|
{
|
|
|
struct kvm_irq_routing_entry kroute = {};
|
|
|
int virq;
|
|
|
+ KVMState *s = c->s;
|
|
|
MSIMessage msg = {0, 0};
|
|
|
|
|
|
if (pci_available && dev) {
|
|
@@ -2004,7 +2005,7 @@ int kvm_irqchip_add_msi_route(KVMState *s, int vector, PCIDevice *dev)
|
|
|
|
|
|
kvm_add_routing_entry(s, &kroute);
|
|
|
kvm_arch_add_msi_route_post(&kroute, vector, dev);
|
|
|
- kvm_irqchip_commit_routes(s);
|
|
|
+ c->changes++;
|
|
|
|
|
|
return virq;
|
|
|
}
|
|
@@ -2162,7 +2163,7 @@ int kvm_irqchip_send_msi(KVMState *s, MSIMessage msg)
|
|
|
abort();
|
|
|
}
|
|
|
|
|
|
-int kvm_irqchip_add_msi_route(KVMState *s, int vector, PCIDevice *dev)
|
|
|
+int kvm_irqchip_add_msi_route(KVMRouteChange *c, int vector, PCIDevice *dev)
|
|
|
{
|
|
|
return -ENOSYS;
|
|
|
}
|