From: Leon Romanovsky <[email protected]>

Align this code with other locations where efa_free_mapped() depends on the
presence of a valid CPU address, which is guaranteed when qp->rq_size != 0.

Signed-off-by: Leon Romanovsky <[email protected]>
---
 drivers/infiniband/hw/efa/efa_verbs.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/infiniband/hw/efa/efa_verbs.c 
b/drivers/infiniband/hw/efa/efa_verbs.c
index ae9b98b4b528..bc69aef3e436 100644
--- a/drivers/infiniband/hw/efa/efa_verbs.c
+++ b/drivers/infiniband/hw/efa/efa_verbs.c
@@ -579,7 +579,7 @@ static int qp_mmap_entries_setup(struct efa_qp *qp,
 
        resp->llq_desc_offset &= ~PAGE_MASK;
 
-       if (qp->rq_size) {
+       if (qp->rq_cpu_addr) {
                address = dev->db_bar_addr + resp->rq_db_offset;
 
                qp->rq_db_mmap_entry =
@@ -828,7 +828,7 @@ int efa_create_qp(struct ib_qp *ibqp, struct 
ib_qp_init_attr *init_attr,
 err_destroy_qp:
        efa_destroy_qp_handle(dev, create_qp_resp.qp_handle);
 err_free_mapped:
-       if (qp->rq_size)
+       if (qp->rq_cpu_addr)
                efa_free_mapped(dev, qp->rq_cpu_addr, qp->rq_dma_addr,
                                qp->rq_size, DMA_TO_DEVICE);
 err_out:

-- 
2.52.0


Reply via email to