[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH] xen/pciback: fix XEN_PCI_OP_enable_msix result



Prior to 2.6.19 and as of 2.6.31, pci_enable_msix() can return a
positive value to indicate the number of vectors (less than the amount
requested) that can be set up for a given device. Returning this as an
operation value (secondary result) is fine, but (primary) operation
results are expected to be negative (error) or zero (success) according
to the protocol. With the frontend fixed to match the XenoLinux
behavior, the backend can now validly return zero (success) here,
passing the upper limit on the number of vectors in op->value.

Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>

---
 drivers/xen/xen-pciback/pciback_ops.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- 3.4-rc1/drivers/xen/xen-pciback/pciback_ops.c
+++ 3.4-rc1-xen-pciback-msix-retval/drivers/xen/xen-pciback/pciback_ops.c
@@ -234,7 +234,7 @@ int xen_pcibk_enable_msix(struct xen_pci
        if (dev_data)
                dev_data->ack_intr = 0;
 
-       return result;
+       return result > 0 ? 0 : result;
 }
 
 static




_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.