APPLIED: [SRU][J:linux-azure][PULL v3] Additional Mana Patch Requests for 5.15 Kernel
John Cabaj
john.cabaj at canonical.com
Thu Mar 27 17:37:20 UTC 2025
On 3/27/25 10:31 AM, John Cabaj wrote:
> BugLink: https://bugs.launchpad.net/bugs/2103651
>
> SRU Justification
>
> [Impact]
>
> * Microsoft requested additional MANA patches for 5.15 to bring
> important fixes from 6.8 and newer.
> * Requires previous commit ("net: mana: Fix oversized sge0 for GSO
> packets") to be reverted and re-applied on top, as the remainder of the
> patchset would cause incorrect code addition during cherry-pick
>
> [Fix]
>
> * 12 clean cherry-picks from upstream
>
> 3e64bb2ae7d9: "net: mana: cleanup mana struct after debugfs_remove()"
> 87c4b5e8a6b6: "scsi: storvsc: Set correct data length for sending SCSI
> command without payload"
> 368809a586bd: "net: mana: Add get_link and get_link_ksettings in ethtool"
> 9480d2fac80b: "net: mana: Cleanup "mana" debugfs dir after cleanup of
> all children"
> 232ffe595480: "net: netvsc: Update default VMBus channels"
> 51c617891b64: "net: mana: Fix the extra HZ in mana_hwc_send_request"
> 77b356028961: "net: mana: Configure hwc timeout from hardware"
> 77be12274124: "net: mana: Fix perf regression: remove rx_cqes, tx_cqes
> counters"
> 87b01cb815c7: "net: mana: Fix possible double free in error handling path"
> 12d56dcd1fec: "net: mana: Increase the DEF_RX_BUFFERS_PER_QUEUE to 1024"
> ac30ab1488f8: "RDMA/mana_ib: query device capabilities"
> 2948a31f3f4f: "RDMA/mana_ib: register RDMA device with GDMA"
>
> * 5 backports from upstream
> a43e8e9ffa0d: "net: mana: Fix oversized sge0 for GSO packets"
> 8942bba12fbb: "net: mana: Enable debugfs files for MANA device"
> 3d133ab4a367: "net: mana: Add gdma stats to ethtool output for mana"
> 7f4df1601556: "net: mana: Add new MANA VF performance counters for
> easier troubleshooting"
> 6ce8eb462c1b: "net: mana: Implement get_ringparam/set_ringparam for mana"
>
> * 1 revert (from jammy:linux-azure)
> ce02deecee38: Revert "net: mana: Fix oversized sge0 for GSO packets"
>
> [Test Plan]
>
> * Compile tested
> * Boot tested on Standard_A2_v2 instance
> * Microsoft tested successfully
>
> [Regression potential]
>
> * Several of the backports took a bit of effort. For example, 5.15
> doesn't have 7462494408cd: "ethtool: extend ringparam setting/getting
> API with rx_buf_len" so the mana_ethtool changes requires function
> parameter modifications to match 5.15. Additional, 5.15 doesn't have
> 504148fedb85: "net: add skb_[inner_]tcp_all_headers helpers", so
> previous arithmetic had to be re-implemented. There were a couple of
> other places where previous functions were maintained rather than
> bringing in unknown context from the commit.
> * Most changes were to MANA related source code, so leaning heavily on
> Microsoft to test there, but it is localized. MANA changes could lead to
> network instability.
> * Other changes to scsi and hyperv were small and clean cherry-picks
> from upstream, so expect little regression risk there.
>
> [Other info]
>
> * SF#00408239
> * SF#00406456
> * SF#00407579
>
> v2:
>
> * Revert "net: mana: Fix oversized sge0 for GSO packets" and re-apply on
> top to fix incorrect code addition during cherry-pick
>
> v3:
>
> * Adding 3e64bb2ae7d9: "net: mana: cleanup mana struct after
> debugfs_remove()"
> * Fixing a few formatting nits
>
> ----------------------------------------------------------------
> The following changes since commit
> ffb57d7416f896158a5f990a5a10e275ee92145c:
>
> UBUNTU: Ubuntu-azure-5.15.0-1085.94 (2025-03-21 16:53:00 -0500)
>
> are available in the Git repository at:
>
>
> https://git.launchpad.net/~john-cabaj/ubuntu/+source/linux-azure/+git/
> jammy lp2103651
>
> for you to fetch changes up to 9dd690003b67cead1ef24488218c8e0325572fc1:
>
> net: mana: cleanup mana struct after debugfs_remove() (2025-03-27
> 10:23:36 -0500)
>
> ----------------------------------------------------------------
> Erni Sri Satya Vennela (2):
> net: netvsc: Update default VMBus channels
> net: mana: Add get_link and get_link_ksettings in ethtool
>
> Haiyang Zhang (2):
> net: mana: Fix perf regression: remove rx_cqes, tx_cqes counters
> net: mana: Fix oversized sge0 for GSO packets
>
> John Cabaj (1):
> Revert "net: mana: Fix oversized sge0 for GSO packets"
>
> Long Li (3):
> RDMA/mana_ib: register RDMA device with GDMA
> RDMA/mana_ib: query device capabilities
> scsi: storvsc: Set correct data length for sending SCSI command
> without payload
>
> Ma Ke (1):
> net: mana: Fix possible double free in error handling path
>
> Shradha Gupta (7):
> net: mana: Implement get_ringparam/set_ringparam for mana
> net: mana: Increase the DEF_RX_BUFFERS_PER_QUEUE to 1024
> net: mana: Add new MANA VF performance counters for easier
> troubleshooting
> net: mana: Add gdma stats to ethtool output for mana
> net: mana: Enable debugfs files for MANA device
> net: mana: Cleanup "mana" debugfs dir after cleanup of all children
> net: mana: cleanup mana struct after debugfs_remove()
>
> Souradeep Chakrabarti (2):
> net: mana: Configure hwc timeout from hardware
> net: mana: Fix the extra HZ in mana_hwc_send_request
>
> drivers/infiniband/hw/mana/cq.c | 2 +-
> drivers/infiniband/hw/mana/device.c | 31 +++++++++++++
> ++----
> drivers/infiniband/hw/mana/main.c | 69 +++++++++++++
> +++++++++++++++++++----------
> drivers/infiniband/hw/mana/mana_ib.h | 50 +++++++++++++
> ++++++++++++++++++
> drivers/infiniband/hw/mana/qp.c | 19 ++++++------
> drivers/net/ethernet/microsoft/mana/gdma_main.c | 87 +++++++++++++
> ++++++++++++++++++++++++++++++++++++++--
> drivers/net/ethernet/microsoft/mana/hw_channel.c | 24 ++++++++++++++-
> drivers/net/ethernet/microsoft/mana/mana_en.c | 216 +++++++++++++
> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
> ++++++++++++++++++++++++++++++++++++----------
> drivers/net/ethernet/microsoft/mana/mana_ethtool.c | 146 +++++++++++++
> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
> drivers/net/hyperv/hyperv_net.h | 2 +-
> drivers/net/hyperv/netvsc_drv.c | 3 +-
> drivers/scsi/storvsc_drv.c | 1 +
> include/net/mana/gdma.h | 31 +++++++++++++
> ++++--
> include/net/mana/hw_channel.h | 5 ++++
> include/net/mana/mana.h | 134 +++++++++++++
> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--
> 15 files changed, 763 insertions(+), 57 deletions(-)
Applied to jammy:linux-azure master-next branch.
Thanks,
John
More information about the kernel-team
mailing list