summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJack Morgenstein <jackm@dev.mellanox.co.il>2007-08-06 17:09:09 +0300
committerRoland Dreier <rolandd@cisco.com>2007-08-07 12:40:56 -0700
commit6958e827f187c9c5cd39af075567f74f02bf3dd1 (patch)
tree705a1c3c2f1d3719e2b8bfbed80a0d4d8f7c11b4
parent198919151dea65d83dd0fb66979b1df28402f2b0 (diff)
downloadkernel-crypto-6958e827f187c9c5cd39af075567f74f02bf3dd1.tar.gz
kernel-crypto-6958e827f187c9c5cd39af075567f74f02bf3dd1.tar.xz
kernel-crypto-6958e827f187c9c5cd39af075567f74f02bf3dd1.zip
IPoIB: Fix leak in ipoib_transport_dev_init() error path
ipoib_transport_dev_init() calls ipoib_cm_dev_init(), so it needs to call ipoib_cm_dev_cleanup() to unwind that on the error path. Found by Dotan Barak of Mellanox. Signed-off-by: Jack Morgenstein <jackm@dev.mellanox.co.il> Signed-off-by: Roland Dreier <rolandd@cisco.com>
-rw-r--r--drivers/infiniband/ulp/ipoib/ipoib_verbs.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/infiniband/ulp/ipoib/ipoib_verbs.c b/drivers/infiniband/ulp/ipoib/ipoib_verbs.c
index 982eb88e27e..563aeacf9e1 100644
--- a/drivers/infiniband/ulp/ipoib/ipoib_verbs.c
+++ b/drivers/infiniband/ulp/ipoib/ipoib_verbs.c
@@ -211,6 +211,7 @@ out_free_cq:
out_free_mr:
ib_dereg_mr(priv->mr);
+ ipoib_cm_dev_cleanup(dev);
out_free_pd:
ib_dealloc_pd(priv->pd);