From: Vijay Immanuel Date: Wed, 13 Jun 2018 01:16:05 +0000 (-0700) Subject: IB/rxe: Fix missing completion for mem_reg work requests X-Git-Tag: v4.19~746^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=375dc53d032fc11e98036b5f228ad13f7c5933f5;p=platform%2Fkernel%2Flinux-rpi3.git IB/rxe: Fix missing completion for mem_reg work requests Run the completer task to post a work completion after processing a memory registration or invalidate work request. This covers the case where the memory registration or invalidate was the last work request posted to the qp. Signed-off-by: Vijay Immanuel Reviewed-by: Yonatan Cohen Signed-off-by: Jason Gunthorpe --- diff --git a/drivers/infiniband/sw/rxe/rxe_req.c b/drivers/infiniband/sw/rxe/rxe_req.c index 829ecb9..8be2723 100644 --- a/drivers/infiniband/sw/rxe/rxe_req.c +++ b/drivers/infiniband/sw/rxe/rxe_req.c @@ -645,6 +645,9 @@ next_wqe: } else { goto exit; } + if ((wqe->wr.send_flags & IB_SEND_SIGNALED) || + qp->sq_sig_type == IB_SIGNAL_ALL_WR) + rxe_run_task(&qp->comp.task, 1); qp->req.wqe_index = next_index(qp->sq.queue, qp->req.wqe_index); goto next_wqe;