History

net/mlx5: Add support for RDMA TX steering

Add new RDMA TX flow steering namespace. Flow steering rules in this namespace are used to filter transmitted RDMA traffic.

Michael Guralnik committed 6 years ago

Commit 24670b11 parent 826096d6 files · +67 −3Browse files

Showing the changes to include/linux (3 of 6 files). Show all

Unified · Split

3 files
  1. include/linux/mlx5/device.h +6 −0
  2. include/linux/mlx5/fs.h +1 −0
  3. include/linux/mlx5/mlx5_ifc.h +1 −1
include/linux/mlx5/device.h+6−0
@@ -1211,6 +1211,12 @@ enum mlx5_qcam_feature_groups { · 1210 unmodified lines
12111211 #define MLX5_CAP_FLOWTABLE_RDMA_RX_MAX(mdev, cap) \
12121212 MLX5_CAP_FLOWTABLE_MAX(mdev, flow_table_properties_nic_receive_rdma.cap)
12131213
1214+#define MLX5_CAP_FLOWTABLE_RDMA_TX(mdev, cap) \
1215+ MLX5_CAP_FLOWTABLE(mdev, flow_table_properties_nic_transmit_rdma.cap)
1216+
1217+#define MLX5_CAP_FLOWTABLE_RDMA_TX_MAX(mdev, cap) \
1218+ MLX5_CAP_FLOWTABLE_MAX(mdev, flow_table_properties_nic_transmit_rdma.cap)
1219+
12141220 #define MLX5_CAP_ESW_FLOWTABLE(mdev, cap) \
12151221 MLX5_GET(flow_table_eswitch_cap, \
12161222 mdev->caps.hca_cur[MLX5_CAP_ESWITCH_FLOW_TABLE], cap)
include/linux/mlx5/fs.h+1−0
@@ -77,6 +77,7 @@ enum mlx5_flow_namespace_type { · 76 unmodified lines
7777 MLX5_FLOW_NAMESPACE_EGRESS,
7878 MLX5_FLOW_NAMESPACE_RDMA_RX,
7979 MLX5_FLOW_NAMESPACE_RDMA_RX_KERNEL,
80+ MLX5_FLOW_NAMESPACE_RDMA_TX,
8081 };
8182
8283 enum {
include/linux/mlx5/mlx5_ifc.h+1−1
@@ -705,7 +705,7 @@ struct mlx5_ifc_flow_table_nic_cap_bits { · 704 unmodified lines
705705
706706 struct mlx5_ifc_flow_table_prop_layout_bits flow_table_properties_nic_transmit;
707707
708− u8 reserved_at_a00[0x200];
708+ struct mlx5_ifc_flow_table_prop_layout_bits flow_table_properties_nic_transmit_rdma;
709709
710710 struct mlx5_ifc_flow_table_prop_layout_bits flow_table_properties_nic_transmit_sniffer;
711711