diff --git a/lib/nvme/nvme_rdma.c b/lib/nvme/nvme_rdma.c index cd70d0f9c..6ca02639b 100644 --- a/lib/nvme/nvme_rdma.c +++ b/lib/nvme/nvme_rdma.c @@ -1571,6 +1571,7 @@ nvme_rdma_ctrlr_create_qpair(struct spdk_nvme_ctrlr *ctrlr, SPDK_DEBUGLOG(SPDK_LOG_NVME, "rc =%d\n", rc); if (rc) { SPDK_ERRLOG("Unable to allocate rqpair RDMA requests\n"); + free(rqpair); return NULL; } SPDK_DEBUGLOG(SPDK_LOG_NVME, "RDMA requests allocated\n"); @@ -1579,6 +1580,8 @@ nvme_rdma_ctrlr_create_qpair(struct spdk_nvme_ctrlr *ctrlr, SPDK_DEBUGLOG(SPDK_LOG_NVME, "rc =%d\n", rc); if (rc < 0) { SPDK_ERRLOG("Unable to allocate rqpair RDMA responses\n"); + nvme_rdma_free_reqs(rqpair); + free(rqpair); return NULL; } SPDK_DEBUGLOG(SPDK_LOG_NVME, "RDMA responses allocated\n");