Re: [Patch v4 0/3] Register with RDMA SOC interface and support for CQ

From: Leon Romanovsky
Date: Wed Dec 20 2023 - 03:28:19 EST


On Fri, Dec 15, 2023 at 06:04:12PM -0800, longli@xxxxxxxxxxxxxxxxx wrote:
> From: Long Li <longli@xxxxxxxxxxxxx>
>
> This patchset add support for registering a RDMA device with SoC for
> support of querying device capabilities, upcoming RC queue pairs and
> CQ interrupts.
>
> This patchset is partially based on Ajay Sharma's work:
> https://lore.kernel.org/netdev/1697494322-26814-1-git-send-email-sharmaajay@xxxxxxxxxxxxxxxxx
>
> Changes in v2:
> Dropped the patches to create EQs for RC QP. They will be implemented with
> RC patches.
>
>
> Long Li (3):
> RDMA/mana_ib: register RDMA device with GDMA
> RDMA/mana_ib: query device capabilities
> RDMA/mana_ib: Add CQ interrupt support for RAW QP
>
> drivers/infiniband/hw/mana/cq.c | 34 ++++++-
> drivers/infiniband/hw/mana/device.c | 31 +++++--
> drivers/infiniband/hw/mana/main.c | 69 ++++++++++----
> drivers/infiniband/hw/mana/mana_ib.h | 53 +++++++++++
> drivers/infiniband/hw/mana/qp.c | 90 ++++++++++++++++---
> .../net/ethernet/microsoft/mana/gdma_main.c | 5 ++
> include/net/mana/gdma.h | 5 ++
> 7 files changed, 252 insertions(+), 35 deletions(-)

Applied with the following change in third patch.

diff --git a/drivers/infiniband/hw/mana/qp.c b/drivers/infiniband/hw/mana/qp.c
index 19998082a376..21ac9fcadf3f 100644
--- a/drivers/infiniband/hw/mana/qp.c
+++ b/drivers/infiniband/hw/mana/qp.c
@@ -443,17 +443,16 @@ static int mana_ib_create_qp_raw(struct ib_qp *ibqp, struct ib_pd *ibpd,
ibdev_dbg(&mdev->ib_dev,
"Failed copy udata for create qp-raw, %d\n",
err);
- goto err_destroy_wq_obj;
+ goto err_release_gdma_cq;
}

return 0;

-err_destroy_wq_obj:
- if (gdma_cq) {
- kfree(gdma_cq);
- gd->gdma_context->cq_table[send_cq->id] = NULL;
- }
+err_release_gdma_cq:
+ kfree(gdma_cq);
+ gd->gdma_context->cq_table[send_cq->id] = NULL;

+err_destroy_wq_obj:
mana_destroy_wq_obj(mpc, GDMA_SQ, qp->tx_object);

err_destroy_dma_region:


>
> --
> 2.25.1
>