| From foo@baz Thu Nov 9 09:48:01 CET 2017 |
| From: Bart Van Assche <bart.vanassche@sandisk.com> |
| Date: Tue, 10 Jan 2017 11:15:52 -0800 |
| Subject: IB/rxe: Fix reference leaks in memory key invalidation code |
| |
| From: Bart Van Assche <bart.vanassche@sandisk.com> |
| |
| |
| [ Upstream commit ab17654476a11a1ed7d89f1104e2acdb7ed1c9ed ] |
| |
| Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com> |
| Reviewed-by: Leon Romanovsky <leonro@mellanox.com> |
| Reviewed-by: Andrew Boyer <andrew.boyer@dell.com> |
| Cc: Moni Shoua <monis@mellanox.com> |
| Signed-off-by: Doug Ledford <dledford@redhat.com> |
| Signed-off-by: Sasha Levin <alexander.levin@verizon.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| drivers/infiniband/sw/rxe/rxe_req.c | 1 + |
| drivers/infiniband/sw/rxe/rxe_resp.c | 1 + |
| 2 files changed, 2 insertions(+) |
| |
| --- a/drivers/infiniband/sw/rxe/rxe_req.c |
| +++ b/drivers/infiniband/sw/rxe/rxe_req.c |
| @@ -633,6 +633,7 @@ next_wqe: |
| goto exit; |
| } |
| rmr->state = RXE_MEM_STATE_FREE; |
| + rxe_drop_ref(rmr); |
| wqe->state = wqe_state_done; |
| wqe->status = IB_WC_SUCCESS; |
| } else if (wqe->wr.opcode == IB_WR_REG_MR) { |
| --- a/drivers/infiniband/sw/rxe/rxe_resp.c |
| +++ b/drivers/infiniband/sw/rxe/rxe_resp.c |
| @@ -893,6 +893,7 @@ static enum resp_states do_complete(stru |
| return RESPST_ERROR; |
| } |
| rmr->state = RXE_MEM_STATE_FREE; |
| + rxe_drop_ref(rmr); |
| } |
| |
| wc->qp = &qp->ibqp; |