From 486f46e86701e58f94c7de365d8cf7634cf17bca Mon Sep 17 00:00:00 2001 From: Shuhei Matsumoto Date: Thu, 10 Feb 2022 11:06:58 +0900 Subject: [PATCH] nvme_rdma: Call disconnected_qpair_cb when qpair is in disconnected_qpairs list We want to call disconnected_qpairs_cb only if qpair is actually disconnected. When we disconnect qpair asynchronously, for qpairs in the group->disconnected_qpairs list, we want to poll them until actually disconnected and then call disconnected_qpairs_cb for them. As a preparation, call disconnected_qpair_cb only for qpairs which is in the group->disconnected_qpairs list. For TCP and PCIe transports, disconnecting qpair will continue to be synchronous for now. So we change only RDMA transport. Signed-off-by: Shuhei Matsumoto Change-Id: Ifaf6157e1e02fa13f52a66409c9e60fc814d71dd Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/11495 Community-CI: Broadcom CI Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins Reviewed-by: Jim Harris Reviewed-by: Aleksey Marchuk Reviewed-by: Ben Walker --- lib/nvme/nvme_rdma.c | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/nvme/nvme_rdma.c b/lib/nvme/nvme_rdma.c index 6fcea32c0..cd78a1d92 100644 --- a/lib/nvme/nvme_rdma.c +++ b/lib/nvme/nvme_rdma.c @@ -2751,7 +2751,6 @@ nvme_rdma_poll_group_process_completions(struct spdk_nvme_transport_poll_group * if (spdk_unlikely(qpair->transport_failure_reason != SPDK_NVME_QPAIR_FAILURE_NONE)) { nvme_rdma_fail_qpair(qpair, 0); - disconnected_qpair_cb(qpair, tgroup->group->ctx); continue; } num_qpairs++;