mbox series

[rdma-next,0/3] Add RDMA TRANSPORT steering domain

Message ID cover.1735817449.git.leon@kernel.org (mailing list archive)
Headers show
Series Add RDMA TRANSPORT steering domain | expand

Message

Leon Romanovsky Jan. 2, 2025, 11:36 a.m. UTC
From Patrisious,

The following series adds two new steering domains:
RDMA_TRANSPORT_RX - Packets will traverse through it after RDMA_RX
RDMA_TRANSPORT_TX - Packets will traverse through it before RDMA_TX

These domains created on the vport group manager for each vport.
So RDMA application running on VF(or SF) is not aware of this domain,
and the main motivation behind it is to catch control packets, forward
them to VF QP as well as the control SW to help with congestion control.

These new domains are also exposed to users through mlx5dv_create_flow_matcher()
which will now support these two new table types which have to be created with
its corresponding ib_port.

Thanks

Patrisious Haddad (3):
  net/mlx5: Query ADV_RDMA capabilities
  net/mlx5: fs, add RDMA TRANSPORT steering domain support
  RDMA/mlx5: Expose RDMA TRANSPORT flow table types to userspace

 drivers/infiniband/hw/mlx5/fs.c               | 140 ++++++++++++--
 drivers/infiniband/hw/mlx5/fs.h               |   2 +
 drivers/infiniband/hw/mlx5/mlx5_ib.h          |   3 +
 .../mellanox/mlx5/core/esw/acl/helper.c       |   2 +-
 .../mellanox/mlx5/core/eswitch_offloads.c     |   6 +-
 .../net/ethernet/mellanox/mlx5/core/fs_cmd.c  |   2 +
 .../net/ethernet/mellanox/mlx5/core/fs_core.c | 178 ++++++++++++++++--
 .../net/ethernet/mellanox/mlx5/core/fs_core.h |  12 +-
 drivers/net/ethernet/mellanox/mlx5/core/fw.c  |   7 +
 .../net/ethernet/mellanox/mlx5/core/main.c    |   1 +
 include/linux/mlx5/device.h                   |  11 ++
 include/linux/mlx5/fs.h                       |  11 +-
 include/linux/mlx5/mlx5_ifc.h                 |  42 ++++-
 include/uapi/rdma/mlx5_user_ioctl_cmds.h      |   1 +
 include/uapi/rdma/mlx5_user_ioctl_verbs.h     |   2 +
 15 files changed, 385 insertions(+), 35 deletions(-)