Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 60460dfd authored by Bryan O'Sullivan's avatar Bryan O'Sullivan Committed by Linus Torvalds
Browse files

[PATCH] IB/ipath: fix some memory leaks on failure paths



Signed-off-by: default avatarRobert Walsh <robert.walsh@qlogic.com>
Signed-off-by: default avatarBryan O'Sullivan <bryan.osullivan@qlogic.com>
Cc: "Michael S. Tsirkin" <mst@mellanox.co.il>
Cc: Roland Dreier <rolandd@cisco.com>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 4a45b7d4
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -115,6 +115,7 @@ static int create_port0_egr(struct ipath_devdata *dd)
				      "eager TID %u\n", e);
			while (e != 0)
				dev_kfree_skb(skbs[--e]);
			vfree(skbs);
			ret = -ENOMEM;
			goto bail;
		}
+2 −0
Original line number Diff line number Diff line
@@ -692,6 +692,7 @@ struct ib_qp *ipath_create_qp(struct ib_pd *ibpd,
	case IB_QPT_GSI:
		qp = kmalloc(sizeof(*qp), GFP_KERNEL);
		if (!qp) {
			vfree(swq);
			ret = ERR_PTR(-ENOMEM);
			goto bail;
		}
@@ -702,6 +703,7 @@ struct ib_qp *ipath_create_qp(struct ib_pd *ibpd,
		qp->r_rq.wq = vmalloc(qp->r_rq.size * sz);
		if (!qp->r_rq.wq) {
			kfree(qp);
			vfree(swq);
			ret = ERR_PTR(-ENOMEM);
			goto bail;
		}