diff options
author | Dag Moxnes <dag.moxnes@oracle.com> | 2018-04-25 13:22:01 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2018-04-25 20:34:08 +0200 |
commit | 91a825290ca4eae88603bc811bf74a45f94a3f46 (patch) | |
tree | 0b121e49c126f4f7d17b3ff902147b47f084ee05 /net/rds/ib_cm.c | |
parent | net/smc: keep clcsock reference in smc_tcp_listen_work() (diff) | |
download | linux-91a825290ca4eae88603bc811bf74a45f94a3f46.tar.xz linux-91a825290ca4eae88603bc811bf74a45f94a3f46.zip |
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 3b12f73a5c29 ("rds: ib: add error handle")
Signed-off-by: Dag Moxnes <dag.moxnes@oracle.com>
Reviewed-by: HÃ¥kon Bugge <haakon.bugge@oracle.com>
Acked-by: Santosh Shilimkar <santosh.shilimkar@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/rds/ib_cm.c')
-rw-r--r-- | net/rds/ib_cm.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/net/rds/ib_cm.c b/net/rds/ib_cm.c index eea1d8611b20..13b38ad0fa4a 100644 --- a/net/rds/ib_cm.c +++ b/net/rds/ib_cm.c @@ -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, ic->i_send_cq, ic->i_recv_cq); - return ret; + goto out; sends_out: vfree(ic->i_sends); @@ -572,6 +572,7 @@ send_cq_out: ic->i_send_cq = NULL; rds_ibdev_out: rds_ib_remove_conn(rds_ibdev, conn); +out: rds_ib_dev_put(rds_ibdev); return ret; |