All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH for-next 0/8] RDMA/hns: Support RoCE bonding
@ 2025-09-13  9:06 Junxian Huang
  2025-09-13  9:06 ` [PATCH for-next 1/8] RDMA/hns: Add helpers to obtain netdev and bus_num from hr_dev Junxian Huang
                   ` (7 more replies)
  0 siblings, 8 replies; 14+ messages in thread
From: Junxian Huang @ 2025-09-13  9:06 UTC (permalink / raw)
  To: jgg, leon; +Cc: linux-rdma, linuxarm, huangjunxian6, tangchengchang

This series adds support for RoCE bonding. The bond mode is active
when multiple PF netdevs are enslaved to a bond master while all
following rules are met:
  * All the slaves are on the same card, i.e., they share the same
    bus number.
  * The bond mode are set to mode 1 (active-backup), 2 (XOR) or
    4 (802.3ad).
  * None of the slaves have generated a VF.

In bond mode, a bond ibdev "hns_bond_*" is registered instead of the
regular PF ibdev "hns_*". For RoCE traffic, HW chooses the same active
port as netdev bonding in mode 1, while in mode 2/4, the port selection
is determined by the hash algorithm.

Junxian Huang (8):
  RDMA/hns: Add helpers to obtain netdev and bus_num from hr_dev
  RDMA/hns: Initialize bonding resources
  RDMA/hns: Add bonding event handler
  RDMA/hns: Add bonding cmds
  RDMA/hns: Implement bonding init/uninit process
  RDMA/hns: Add delayed work for bonding
  RDMA/hns: Support link state reporting for bond
  RDMA/hns: Support reset recovery for bond

 drivers/infiniband/hw/hns/Makefile          |   4 +-
 drivers/infiniband/hw/hns/hns_roce_ah.c     |   1 -
 drivers/infiniband/hw/hns/hns_roce_bond.c   | 996 ++++++++++++++++++++
 drivers/infiniband/hw/hns/hns_roce_bond.h   |  95 ++
 drivers/infiniband/hw/hns/hns_roce_device.h |  16 +-
 drivers/infiniband/hw/hns/hns_roce_hw_v2.c  | 175 +++-
 drivers/infiniband/hw/hns/hns_roce_hw_v2.h  |  20 +
 drivers/infiniband/hw/hns/hns_roce_main.c   | 176 +++-
 drivers/infiniband/hw/hns/hns_roce_pd.c     |   1 -
 drivers/infiniband/hw/hns/hns_roce_qp.c     |   5 +-
 drivers/infiniband/hw/hns/hns_roce_srq.c    |   1 -
 11 files changed, 1438 insertions(+), 52 deletions(-)
 create mode 100644 drivers/infiniband/hw/hns/hns_roce_bond.c
 create mode 100644 drivers/infiniband/hw/hns/hns_roce_bond.h

--
2.33.0


^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2025-10-13  8:25 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-09-13  9:06 [PATCH for-next 0/8] RDMA/hns: Support RoCE bonding Junxian Huang
2025-09-13  9:06 ` [PATCH for-next 1/8] RDMA/hns: Add helpers to obtain netdev and bus_num from hr_dev Junxian Huang
2025-09-24 14:00   ` Jason Gunthorpe
2025-09-28 10:12     ` Junxian Huang
2025-09-13  9:06 ` [PATCH for-next 2/8] RDMA/hns: Initialize bonding resources Junxian Huang
2025-09-24 14:04   ` Jason Gunthorpe
2025-10-13  8:25     ` Junxian Huang
2025-09-13  9:06 ` [PATCH for-next 3/8] RDMA/hns: Add bonding event handler Junxian Huang
2025-09-24 14:05   ` Jason Gunthorpe
2025-09-13  9:06 ` [PATCH for-next 4/8] RDMA/hns: Add bonding cmds Junxian Huang
2025-09-13  9:06 ` [PATCH for-next 5/8] RDMA/hns: Implement bonding init/uninit process Junxian Huang
2025-09-13  9:06 ` [PATCH for-next 6/8] RDMA/hns: Add delayed work for bonding Junxian Huang
2025-09-13  9:06 ` [PATCH for-next 7/8] RDMA/hns: Support link state reporting for bond Junxian Huang
2025-09-13  9:06 ` [PATCH for-next 8/8] RDMA/hns: Support reset recovery " Junxian Huang

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.