[PATCH] nvme-rdma: fix a missing completion with remove invalidation
Christoph Hellwig
hch at lst.de
Tue Jun 23 12:22:39 EDT 2020
Revert and incorret transformation that caused requests using remote
invalidation to never complete.
Fixes: 421147be863b ("nvme-rdma: factor out a nvme_rdma_end_request helper")
Reported-by: Bart Van Assche <bvanassche at acm.org>
Signed-off-by: Christoph Hellwig <hch at lst.de>
Tested-by: Bart Van Assche <bvanassche at acm.org>
---
drivers/nvme/host/rdma.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/drivers/nvme/host/rdma.c b/drivers/nvme/host/rdma.c
index 97b1054efb8409..6d5c4495f352ea 100644
--- a/drivers/nvme/host/rdma.c
+++ b/drivers/nvme/host/rdma.c
@@ -1696,9 +1696,10 @@ static void nvme_rdma_process_nvme_rsp(struct nvme_rdma_queue *queue,
nvme_rdma_error_recovery(queue->ctrl);
}
/* the local invalidation completion will end the request */
- } else {
- nvme_rdma_end_request(req);
+ return;
}
+
+ nvme_rdma_end_request(req);
}
static void nvme_rdma_recv_done(struct ib_cq *cq, struct ib_wc *wc)
--
2.26.2
More information about the Linux-nvme
mailing list