Add new RDMA TX flow steering namespace. Flow steering rules in this namespace are used to filter transmitted RDMA traffic.
Showing the changes to include/linux (3 of 6 files). Show all
Unified · Split
| @@ -1211,6 +1211,12 @@ enum mlx5_qcam_feature_groups { · 1210 unmodified lines | ||
| 1211 | 1211 | #define MLX5_CAP_FLOWTABLE_RDMA_RX_MAX(mdev, cap) \ |
| 1212 | 1212 | MLX5_CAP_FLOWTABLE_MAX(mdev, flow_table_properties_nic_receive_rdma.cap) |
| 1213 | 1213 | |
| 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 | + | |
| 1214 | 1220 | #define MLX5_CAP_ESW_FLOWTABLE(mdev, cap) \ |
| 1215 | 1221 | MLX5_GET(flow_table_eswitch_cap, \ |
| 1216 | 1222 | mdev->caps.hca_cur[MLX5_CAP_ESWITCH_FLOW_TABLE], cap) |
| @@ -77,6 +77,7 @@ enum mlx5_flow_namespace_type { · 76 unmodified lines | ||
| 77 | 77 | MLX5_FLOW_NAMESPACE_EGRESS, |
| 78 | 78 | MLX5_FLOW_NAMESPACE_RDMA_RX, |
| 79 | 79 | MLX5_FLOW_NAMESPACE_RDMA_RX_KERNEL, |
| 80 | + MLX5_FLOW_NAMESPACE_RDMA_TX, | |
| 80 | 81 | }; |
| 81 | 82 | |
| 82 | 83 | enum { |
| @@ -705,7 +705,7 @@ struct mlx5_ifc_flow_table_nic_cap_bits { · 704 unmodified lines | ||
| 705 | 705 | |
| 706 | 706 | struct mlx5_ifc_flow_table_prop_layout_bits flow_table_properties_nic_transmit; |
| 707 | 707 | |
| 708 | − u8 reserved_at_a00[0x200]; | |
| 708 | + struct mlx5_ifc_flow_table_prop_layout_bits flow_table_properties_nic_transmit_rdma; | |
| 709 | 709 | |
| 710 | 710 | struct mlx5_ifc_flow_table_prop_layout_bits flow_table_properties_nic_transmit_sniffer; |
| 711 | 711 | |