On 6/25/21 9:32 AM, Bob Pearson wrote: > On 6/25/21 8:03 AM, Dan Carpenter wrote: >> This error path needs to unlock before returning. >> >> Fixes: ec0fa2445c18 ("RDMA/rxe: Fix over copying in get_srq_wqe") >> Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx> >> --- >> I'm sort of surprised this one wasn't caught in testing... >> >> drivers/infiniband/sw/rxe/rxe_resp.c | 1 + >> 1 file changed, 1 insertion(+) >> >> diff --git a/drivers/infiniband/sw/rxe/rxe_resp.c b/drivers/infiniband/sw/rxe/rxe_resp.c >> index 72cdb170b67b..3743dc39b60c 100644 >> --- a/drivers/infiniband/sw/rxe/rxe_resp.c >> +++ b/drivers/infiniband/sw/rxe/rxe_resp.c >> @@ -314,6 +314,7 @@ static enum resp_states get_srq_wqe(struct rxe_qp *qp) >> >> /* don't trust user space data */ >> if (unlikely(wqe->dma.num_sge > srq->rq.max_sge)) { >> + spin_unlock_bh(&srq->rq.consumer_lock); >> pr_warn("%s: invalid num_sge in SRQ entry\n", __func__); >> return RESPST_ERR_MALFORMED_WQE; >> } >> > > This is correct. Thanks. > Bob Pearson > Should say Reviewed-by: Bob Pearson <rpearsonhpe@xxxxxxxxx>