nvme-rdma: Introduce nvme_rdma_destroy_qp
PATCH 1/1 nvme-rdma: Introduce nvme_rdma_destroy_qp
QP object is created using rdma_cm api, therefore the destruction should use the same api for symmetry.
Signed-off-by Max Gurtovoy <maxg at mellanox.com>
--- drivers/nvme/host/rdma.c | 10 ++++++++-- 1 files changed, 8 insertions(+), 2 deletions(-)
drivers/nvme/host/rdma.c +8 -2
@@ -267,6 +267,12 @@ static int nvme_rdma_create_qp(struct nvme_rdma_queue *queue, const int factor)return ret; } +static void nvme_rdma_destroy_qp (struct nvme_rdma_queue *queue) +{ +rdma_destroy_qp (queue->cm_id); + queue->qp =NULL ; +} +static int nvme_rdma_reinit_request (void *data,struct request *rq) {struct nvme_rdma_ctrl *ctrl = data;
@@ -439,7 +445,7 @@ static void nvme_rdma_destroy_queue_ib(struct nvme_rdma_queue *queue) dev = queue->device; ibdev = dev->dev; -rdma_destroy_qp (queue->cm_id); +nvme_rdma_destroy_qp (queue);ib_free_cq (queue->ib_cq); nvme_rdma_free_ring(ibdev, queue->rsp_ring, queue->queue_size,
@@ -493,7 +499,7 @@ static int nvme_rdma_create_queue_ib(struct nvme_rdma_queue *queue)return 0 ; out_destroy_qp: -ib_destroy_qp (queue->qp); +nvme_rdma_destroy_qp (queue); out_destroy_ib_cq:ib_free_cq (queue->ib_cq); out_put_dev:
Signature · 1 line
1.7.1
PATCH 1/1 nvme-rdma: Introduce nvme_rdma_destroy_qp
Quoted 2 lines · Max Gurtovoy
QP object is created using
rdma_cmapi, therefore the destruction should use the same api for symmetry.
Please resend against current nvme-4.15.