Message ID | 20241016133706.173515-1-jacob.martin@canonical.com |
---|---|
Headers | show |
Series | MANA: include driver fixes and enable module on ARM64 | expand |
On 10/16/24 8:36 AM, Jacob Martin wrote: > BugLink: https://bugs.launchpad.net/bugs/2084598 > > SRU Justification > > [Impact] > > NVIDIA kernels are used on systems that require support for the Microsoft Azure > Network Adapter, including on ARM64 systems with support for 64K and 4K page > sizes. Build the MANA driver on both arches and include the listed fixes for > the MANA driver to support both 64K and 4K page sizes and address a race > condition. > > [Fix] > > UBUNTU: [Packaging] nvidia: Include mana.ko in linux-modules-ABIVER package > UBUNTU: [Config] nvidia: Enable MANA configs on x86 and arm64 > RDMA/mana_ib: use the correct page size for mapping user-mode doorbell page > RDMA/mana_ib: use the correct page table index based on hardware page size > net: mana: Fix RX buf alloc_size alignment and atomic op panic > net: mana: Fix race of mana_hwc_post_rx_wqe and new hwc response > net: mana: Add support for page sizes other than 4KB on ARM64 > net: mana: Enable MANA driver on ARM64 with 4K page size > > [Test Plan] > > Compile tested on x86 and arm64. Kernel regression testing will be run to > verify there are no regressions from these patches on NVIDIA hardware. > > [Where problems could occur] > > These changes are specific to the MANA networking driver. Issues with this > patch would manifest as misbehavior of that driver, likely on ARM64 platforms. > > Haiyang Zhang (4): > net: mana: Enable MANA driver on ARM64 with 4K page size > net: mana: Add support for page sizes other than 4KB on ARM64> net: mana: Fix race of mana_hwc_post_rx_wqe and new hwc response These two commits were picked from linux-next and netdev at the time, but haven since been upstreamed. We should manually cherry-pick these from upstream instead. > net: mana: Fix RX buf alloc_size alignment and atomic op panic > > Jacob Martin (2): > UBUNTU: [Config] nvidia: Enable MANA configs on x86 and arm64 > UBUNTU: [Packaging] nvidia: Include mana.ko in linux-modules-ABIVER > package > > Long Li (2): > RDMA/mana_ib: use the correct page table index based on hardware page > size > RDMA/mana_ib: use the correct page size for mapping user-mode doorbell > page > > debian.nvidia/config/annotations | 6 ++ > debian.nvidia/control.d/nvidia.inclusion-list | 1 + > drivers/infiniband/hw/mana/main.c | 8 +- > drivers/net/ethernet/microsoft/Kconfig | 3 +- > .../net/ethernet/microsoft/mana/gdma_main.c | 10 +-- > .../net/ethernet/microsoft/mana/hw_channel.c | 76 ++++++++++--------- > drivers/net/ethernet/microsoft/mana/mana_en.c | 14 ++-- > .../net/ethernet/microsoft/mana/shm_channel.c | 13 ++-- > include/net/mana/gdma.h | 10 ++- > include/net/mana/mana.h | 3 +- > 10 files changed, 86 insertions(+), 58 deletions(-) >