Qing He
2009-Sep-04 09:29 UTC
[Xen-devel] [PATCH] xend: passthrough: fix physdev_map_pirq invocation
For those devices not having INTx (like VFs), avoid calling map_pirq, otherwise the guest cannot be started successfully. Also avoid calling this hypercall for hvm guest, this is done in the device model. Signed-off-by: Qing He <qing.he@intel.com> --- pciif.py | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff -r 8f81bdd57afe tools/python/xen/xend/server/pciif.py --- a/tools/python/xen/xend/server/pciif.py Thu Sep 03 09:51:37 2009 +0100 +++ b/tools/python/xen/xend/server/pciif.py Fri Sep 04 17:24:32 2009 +0800 @@ -345,12 +345,13 @@ class PciController(DevController): if rc<0: raise VmError((''pci: failed to remove msi-x iomem'')) - rc = xc.physdev_map_pirq(domid = fe_domid, - index = dev.irq, - pirq = dev.irq) - if rc < 0: - raise VmError((''pci: failed to map irq on device ''+ - ''%s - errno=%d'')%(dev.name,rc)) + if not self.vm.info.is_hvm() and dev.irq: + rc = xc.physdev_map_pirq(domid = fe_domid, + index = dev.irq, + pirq = dev.irq) + if rc < 0: + raise VmError((''pci: failed to map irq on device ''+ + ''%s - errno=%d'')%(dev.name,rc)) if dev.irq>0: log.debug(''pci: enabling irq %d''%dev.irq) rc = xc.domain_irq_permission(domid = fe_domid, pirq = dev.irq, _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel