RDMA/siw: Fix potential NULL de-ref

In siw_connect() we have an error flow where there is no valid qp
pointer.  Make sure we don't try to de-ref in that situation.

Fixes: 6c52fdc244 ("rdma/siw: connection management")
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Bernard Metzler <bmt@zurich.ibm.com>
Link: https://lore.kernel.org/r/20190819140257.19319-1-bmt@zurich.ibm.com
Signed-off-by: Doug Ledford <dledford@redhat.com>
This commit is contained in:
Bernard Metzler 2019-08-19 16:02:57 +02:00 committed by Doug Ledford
parent 27b7fb1ab7
commit 9b44007801

View File

@ -1515,7 +1515,7 @@ int siw_connect(struct iw_cm_id *id, struct iw_cm_conn_param *params)
}
}
error:
siw_dbg_qp(qp, "failed: %d\n", rv);
siw_dbg(id->device, "failed: %d\n", rv);
if (cep) {
siw_socket_disassoc(s);
@ -1540,7 +1540,8 @@ error:
} else if (s) {
sock_release(s);
}
siw_qp_put(qp);
if (qp)
siw_qp_put(qp);
return rv;
}