projects
/
platform
/
kernel
/
linux-rpi.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
accacb8
)
IB/rxe: Fix ref leak in rxe_create_qp()
author
Andrew Boyer
<andrew.boyer@dell.com>
Wed, 23 Nov 2016 17:39:23 +0000
(12:39 -0500)
committer
Doug Ledford
<dledford@redhat.com>
Mon, 12 Dec 2016 21:31:45 +0000
(16:31 -0500)
The udata->inlen error path needs to clean up the ref
added by rxe_alloc().
Signed-off-by: Andrew Boyer <andrew.boyer@dell.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
drivers/infiniband/sw/rxe/rxe_verbs.c
patch
|
blob
|
history
diff --git
a/drivers/infiniband/sw/rxe/rxe_verbs.c
b/drivers/infiniband/sw/rxe/rxe_verbs.c
index
de39b0a
..
071430c
100644
(file)
--- a/
drivers/infiniband/sw/rxe/rxe_verbs.c
+++ b/
drivers/infiniband/sw/rxe/rxe_verbs.c
@@
-564,7
+564,7
@@
static struct ib_qp *rxe_create_qp(struct ib_pd *ibpd,
if (udata) {
if (udata->inlen) {
err = -EINVAL;
- goto err
1
;
+ goto err
2
;
}
qp->is_user = 1;
}
@@
-573,12
+573,13
@@
static struct ib_qp *rxe_create_qp(struct ib_pd *ibpd,
err = rxe_qp_from_init(rxe, qp, pd, init, udata, ibpd);
if (err)
- goto err
2
;
+ goto err
3
;
return &qp->ibqp;
-err
2
:
+err
3
:
rxe_drop_index(qp);
+err2:
rxe_drop_ref(qp);
err1:
return ERR_PTR(err);