nvmf/fc: Check if qpair is already disconnecting.

Dont call spdk_nvmf_qpair_disconnect if qpair is already
disconnecting.

Signed-off-by: Naresh Gottumukkala <raju.gottumukkala@broadcom.com>
Change-Id: Ie7032507775b6abdd178b534a636c5338ecc7d87
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/5710
Community-CI: Broadcom CI
Community-CI: Mellanox Build Bot
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
This commit is contained in:
Naresh Gottumukkala 2020-12-28 07:17:19 +00:00 committed by Jim Harris
parent 34cb6a1578
commit 41f8789ce4

View File

@ -1505,10 +1505,12 @@ nvmf_fc_poller_conn_abort_done(void *hwqp, int32_t status, void *cb_args)
SPDK_DEBUGLOG(nvmf_fc_poller_api, "Connection deleted, conn_id 0x%lx\n", fc_conn->conn_id);
if (!conn_args->backend_initiated) {
if (!conn_args->backend_initiated && (fc_conn->qpair.state != SPDK_NVMF_QPAIR_DEACTIVATING)) {
/* disconnect qpair from nvmf controller */
spdk_nvmf_qpair_disconnect(&fc_conn->qpair,
nvmf_fc_disconnect_qpair_cb, &conn_args->cb_info);
} else {
nvmf_fc_poller_api_perform_cb(&conn_args->cb_info, SPDK_NVMF_FC_POLLER_API_SUCCESS);
}
} else {
/*
@ -1563,10 +1565,12 @@ nvmf_fc_poller_api_del_connection(void *arg)
nvmf_fc_poller_del_conn_lookup_data(conn_args->hwqp, conn_args->fc_conn);
hwqp->num_conns--;
if (!conn_args->backend_initiated) {
if (!conn_args->backend_initiated && (fc_conn->qpair.state != SPDK_NVMF_QPAIR_DEACTIVATING)) {
/* disconnect qpair from nvmf controller */
spdk_nvmf_qpair_disconnect(&fc_conn->qpair, nvmf_fc_disconnect_qpair_cb,
&conn_args->cb_info);
} else {
nvmf_fc_poller_api_perform_cb(&conn_args->cb_info, SPDK_NVMF_FC_POLLER_API_SUCCESS);
}
}
}