NAK: [SRU][PULL][noble:linux-azure-nvidia] New MANA patches for backport

John Cabaj john.cabaj at canonical.com
Fri Feb 7 21:11:57 UTC 2025


On 2/6/25 4:32 PM, John Cabaj wrote:
> BugLink: https://bugs.launchpad.net/bugs/2096924
> 
> SRU Justification
> 
> [Impact]
> 
> * Microsoft requested patches to enable RC QP support and RDMA 
> connection manager support for MANA adapter
> 
> [Fix]
> 
> * 1 revert "RDMA/mana_ib: set node_guid" as previous stable commit was 
> incorrect
> * 21 clean cherry-picks from upstream linux
> * 13 clean cherry-picks from linux-next
> * 1 SAUCE patch to fix namespace issue (6.13 kernel change namespace to 
> string literals, so reverting MANA patches that also introduced this)
> 
> [Test Plan]
> 
> * Compile tested
> * Boot tested
> * Will be further tested by Microsoft
> 
> [Regression potential]
> 
> * Changes isolated to MANA, minimal regression risk. All other changes 
> upstream
> 
> [Other info]
> 
> * SF#00405821
> 
> ----------------------------------------------------------------
> 
> The following changes since commit 
> 7f65875bb8216a735ae674e4593d0d24af29ef3e:
> 
>    UBUNTU: Ubuntu-azure-nvidia-6.8.0-1009.9 (2025-01-16 09:27:26 -0600)
> 
> are available in the Git repository at:
> 
>   https://git.launchpad.net/~john-cabaj/ubuntu/+source/linux-azure/+git/ 
> azure-nvidia mana-patches
> 
> for you to fetch changes up to 3c275e91202bca6d03052377d9f7e015f183c0af:
> 
>    UBUNTU: SAUCE: mana: Removing string literal "NET_MANA" namespace 
> (2025-02-06 15:45:19 -0600)
> 
> ----------------------------------------------------------------
> John Cabaj (2):
>        Revert "RDMA/mana_ib: set node_guid"
>        UBUNTU: SAUCE: mana: Removing string literal "NET_MANA" namespace
> 
> Konstantin Taranov (34):
>        RDMA/mana_ib: Use struct mana_ib_queue for WQs
>        RDMA/mana_ib: Use struct mana_ib_queue for RAW QPs
>        RDMA/mana_ib: remove useless return values from dbg prints
>        RDMA/mana_ib: Use num_comp_vectors of ib_device
>        RDMA/mana_ib: Add EQ creation for rnic adapter
>        RDMA/mana_ib: Create and destroy rnic adapter
>        RDMA/mana_ib: Implement port parameters
>        RDMA/mana_ib: Adding and deleting GIDs
>        RDMA/mana_ib: Configure mac address in RNIC
>        RDMA/mana_ib: Fix missing ret value
>        RDMA/mana_ib: create EQs for RNIC CQs
>        RDMA/mana_ib: create and destroy RNIC cqs
>        RDMA/mana_ib: introduce a helper to remove cq callbacks
>        RDMA/mana_ib: implement uapi for creation of rnic cq
>        RDMA/mana_ib: Create and destroy RC QP
>        RDMA/mana_ib: Implement uapi to create and destroy RC QP
>        RDMA/mana_ib: Modify QP state
>        RDMA/mana_ib: set node_guid
>        RDMA/mana_ib: extend query device
>        RDMA/mana_ib: Process QP error events in mana_ib
>        RDMA/mana_ib: Set correct device into ib
>        RDMA/mana_ib: Allow registration of DMA-mapped memory in PDs
>        RDMA/mana_ib: implement get_dma_mr
>        RDMA/mana_ib: helpers to allocate kernel queues
>        RDMA/mana_ib: create kernel-level CQs
>        RDMA/mana_ib: Create and destroy UD/GSI QP
>        RDMA/mana_ib: UD/GSI QP creation for kernel
>        RDMA/mana_ib: create/destroy AH
>        net/mana: fix warning in the writer of client oob
>        RDMA/mana_ib: UD/GSI work requests
>        RDMA/mana_ib: implement req_notify_cq
>        RDMA/mana_ib: extend mana QP table
>        RDMA/mana_ib: polling of CQs for GSI/UD
>        RDMA/mana_ib: indicate CM support
> 
>   drivers/infiniband/hw/mana/Makefile             |   2 +-
>   drivers/infiniband/hw/mana/ah.c                 |  58 +++++++++++++++
>   drivers/infiniband/hw/mana/cq.c                 | 268 ++++++++++++++++ 
> +++++++++++++++++++++++++++++++++++++++++++++-------
>   drivers/infiniband/hw/mana/device.c             |  69 +++++++++++++++---
>   drivers/infiniband/hw/mana/main.c               | 472 ++++++++++++++++ 
> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 
> +++++++++++++++++++++++++++++---
>   drivers/infiniband/hw/mana/mana_ib.h            | 414 ++++++++++++++++ 
> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 
> ++++++++++++++---
>   drivers/infiniband/hw/mana/mr.c                 |  38 +++++++++-
>   drivers/infiniband/hw/mana/qp.c                 | 525 ++++++++++++++++ 
> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 
> +++++++++++++++++++++++++++-------------------
>   drivers/infiniband/hw/mana/shadow_queue.h       | 115 ++++++++++++++++ 
> ++++++++++++++
>   drivers/infiniband/hw/mana/wq.c                 |  31 ++------
>   drivers/infiniband/hw/mana/wr.c                 | 168 ++++++++++++++++ 
> +++++++++++++++++++++++++++
>   drivers/net/ethernet/microsoft/mana/gdma_main.c |   8 ++-
>   drivers/net/ethernet/microsoft/mana/mana_en.c   |  19 +++++
>   include/net/mana/gdma.h                         |   7 ++
>   include/net/mana/mana.h                         |   2 +
>   include/uapi/rdma/mana-abi.h                    |  21 ++++++
>   16 files changed, 2060 insertions(+), 157 deletions(-)
>   create mode 100644 drivers/infiniband/hw/mana/ah.c
>   create mode 100644 drivers/infiniband/hw/mana/shadow_queue.h
>   create mode 100644 drivers/infiniband/hw/mana/wr.c

More patches need to be added.


John



More information about the kernel-team mailing list