target crash / host hang with nvme-all.3 branch of nvme-fabrics
Steve Wise
swise at opengridcomputing.com
Wed Jun 29 07:11:06 PDT 2016
> This one should be more correct.
> Actually, the rsp was leaked when queue->state is
> NVMET_RDMA_Q_DISCONNECTING. So we should put it back.
>
> It works for me. Could you help to verify?
works!
>
> diff --git a/drivers/nvme/target/rdma.c b/drivers/nvme/target/rdma.c
> index 425b55c..ee8b85e 100644
> --- a/drivers/nvme/target/rdma.c
> +++ b/drivers/nvme/target/rdma.c
> @@ -727,6 +727,8 @@ static void nvmet_rdma_recv_done(struct ib_cq *cq, struct
> ib_wc *wc)
> spin_lock_irqsave(&queue->state_lock, flags);
> if (queue->state == NVMET_RDMA_Q_CONNECTING)
> list_add_tail(&rsp->wait_list, &queue->rsp_wait_list);
> + else
> + nvmet_rdma_put_rsp(rsp);
> spin_unlock_irqrestore(&queue->state_lock, flags);
> return;
> }
>
More information about the Linux-nvme
mailing list