]> xenbits.xensource.com Git - people/ssmith/netchannel2-pvops.git/commitdiff
xen: fix the error handling of msi setup
authorQing He <qing.he@intel.com>
Fri, 28 Aug 2009 08:28:48 +0000 (16:28 +0800)
committerJeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Fri, 28 Aug 2009 18:20:50 +0000 (11:20 -0700)
Fix the error handling of msi setup, the return value of failure
is -1, not 0.

Signed-off-by: Qing He <qing.he@intel.com>
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
arch/x86/xen/pci.c
drivers/xen/events.c

index 60bab6733921d519065701bbe5742a6236c61604..44d91add61d66cfeb8632f30157f1a3bd9457ab2 100644 (file)
@@ -90,13 +90,12 @@ void __init xen_setup_pirqs(void)
 #ifdef CONFIG_PCI_MSI
 int xen_setup_msi_irqs(struct pci_dev *dev, int nvec, int type)
 {
-       unsigned int irq;
-       int ret;
+       int irq, ret;
        struct msi_desc *msidesc;
 
        list_for_each_entry(msidesc, &dev->msi_list, list) {
                irq = xen_create_msi_irq(dev, msidesc, type);
-               if (irq == 0)
+               if (irq < 0)
                        return -1;
 
                ret = set_irq_msi(irq, msidesc);
index 007b1d7fcf4cf7bbead187b6afd0a7b0f1d6320c..a3d430bdcc16a3919bc2b7e3773ff10f3018f14b 100644 (file)
@@ -591,7 +591,7 @@ int xen_destroy_irq(int irq)
        unmap_irq.domid = DOMID_SELF;
        rc = HYPERVISOR_physdev_op(PHYSDEVOP_unmap_pirq, &unmap_irq);
        if (rc) {
-               printk(KERN_WARNING "unmap irq failed %x\n", rc);
+               printk(KERN_WARNING "unmap irq failed %d\n", rc);
                goto out;
        }
 
@@ -643,7 +643,7 @@ int xen_create_msi_irq(struct pci_dev *dev, struct msi_desc *msidesc, int type)
        rc = HYPERVISOR_physdev_op(PHYSDEVOP_map_pirq, &map_irq);
        if (rc) {
 
-               printk(KERN_WARNING "xen map irq failed %x\n", rc);
+               printk(KERN_WARNING "xen map irq failed %d\n", rc);
 
                dynamic_irq_cleanup(irq);