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

Commit 91a82529 authored by Dag Moxnes's avatar Dag Moxnes Committed by David S. Miller
Browse files

rds: ib: Fix missing call to rds_ib_dev_put in rds_ib_setup_qp



The function rds_ib_setup_qp is calling rds_ib_get_client_data and
should correspondingly call rds_ib_dev_put. This call was lost in
the non-error path with the introduction of error handling done in
commit 3b12f73a ("rds: ib: add error handle")

Signed-off-by: default avatarDag Moxnes <dag.moxnes@oracle.com>
Reviewed-by: default avatarHåkon Bugge <haakon.bugge@oracle.com>
Acked-by: default avatarSantosh Shilimkar <santosh.shilimkar@oracle.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 070204a3
Loading
Loading
Loading
Loading
+2 −1
Original line number Original line Diff line number Diff line
@@ -547,7 +547,7 @@ static int rds_ib_setup_qp(struct rds_connection *conn)
	rdsdebug("conn %p pd %p cq %p %p\n", conn, ic->i_pd,
	rdsdebug("conn %p pd %p cq %p %p\n", conn, ic->i_pd,
		 ic->i_send_cq, ic->i_recv_cq);
		 ic->i_send_cq, ic->i_recv_cq);


	return ret;
	goto out;


sends_out:
sends_out:
	vfree(ic->i_sends);
	vfree(ic->i_sends);
@@ -572,6 +572,7 @@ static int rds_ib_setup_qp(struct rds_connection *conn)
		ic->i_send_cq = NULL;
		ic->i_send_cq = NULL;
rds_ibdev_out:
rds_ibdev_out:
	rds_ib_remove_conn(rds_ibdev, conn);
	rds_ib_remove_conn(rds_ibdev, conn);
out:
	rds_ib_dev_put(rds_ibdev);
	rds_ib_dev_put(rds_ibdev);


	return ret;
	return ret;