thanks, I merged this on top to simplify the error path and fix a
memory leak:


diff --git a/drivers/infiniband/hw/ipath/ipath_driver.c 
b/drivers/infiniband/hw/ipath/ipath_driver.c
index 8fa2bb5..f83fb03 100644
--- a/drivers/infiniband/hw/ipath/ipath_driver.c
+++ b/drivers/infiniband/hw/ipath/ipath_driver.c
@@ -305,8 +305,7 @@ static void ipath_verify_pioperf(struct ipath_devdata *dd)
        if (!piobuf) {
                dev_info(&dd->pcidev->dev,
                        "No PIObufs for checking perf, skipping\n");
-               goto done;
-
+               return;
        }
 
        /*
@@ -358,9 +357,12 @@ static void ipath_verify_pioperf(struct ipath_devdata *dd)
                        lcnt / (u32) emsecs);
 
        preempt_enable();
+
+       vfree(addr);
+
 done:
-       if (piobuf) /* disarm it, so it's available again */
-               ipath_disarm_piobufs(dd, pbnum, 1);
+       /* disarm piobuf, so it's available again */
+       ipath_disarm_piobufs(dd, pbnum, 1);
 }
 
 static int __devinit ipath_init_one(struct pci_dev *pdev,
_______________________________________________
general mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to