From 6156777bd4f03ea277e9903ed3f2218700d0b622 Mon Sep 17 00:00:00 2001 From: Jim Harris Date: Wed, 17 Mar 2021 00:06:17 +0000 Subject: [PATCH] nvme: assert if user tries to delete NULL tcp qpair It is invalid to try to delete a NULL qpair, so do not check for it in nvme_tcp_ctrlr_delete_io_qpair and return an error when NULL. Just change it to an assert instead. This makes it consistent with pcie and rdma. While here, add an assert in rdma as well. Signed-off-by: Jim Harris Change-Id: Ic2f76deecb21b78749dac85e33fb1fa0d14a1239 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/6917 Tested-by: SPDK CI Jenkins Reviewed-by: Changpeng Liu Reviewed-by: Aleksey Marchuk Reviewed-by: Shuhei Matsumoto Reviewed-by: --- lib/nvme/nvme_rdma.c | 1 + lib/nvme/nvme_tcp.c | 5 +---- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/lib/nvme/nvme_rdma.c b/lib/nvme/nvme_rdma.c index d6a5cfb9d..d56a48335 100644 --- a/lib/nvme/nvme_rdma.c +++ b/lib/nvme/nvme_rdma.c @@ -1686,6 +1686,7 @@ nvme_rdma_ctrlr_delete_io_qpair(struct spdk_nvme_ctrlr *ctrlr, struct spdk_nvme_ { struct nvme_rdma_qpair *rqpair; + assert(qpair != NULL); rqpair = nvme_rdma_qpair(qpair); nvme_transport_ctrlr_disconnect_qpair(ctrlr, qpair); if (rqpair->defer_deletion_to_pg) { diff --git a/lib/nvme/nvme_tcp.c b/lib/nvme/nvme_tcp.c index 1532479f1..69bc0d68c 100644 --- a/lib/nvme/nvme_tcp.c +++ b/lib/nvme/nvme_tcp.c @@ -327,10 +327,7 @@ nvme_tcp_ctrlr_delete_io_qpair(struct spdk_nvme_ctrlr *ctrlr, struct spdk_nvme_q { struct nvme_tcp_qpair *tqpair; - if (!qpair) { - return -1; - } - + assert(qpair != NULL); nvme_transport_ctrlr_disconnect_qpair(ctrlr, qpair); nvme_tcp_qpair_abort_reqs(qpair, 1); nvme_qpair_deinit(qpair);