Support RSS hash for inner headers according to a new flag, MLX4_IB_RX_HASH_INNER provided by the vendor channel. In case the flag is set, RSS hash will be done on the inner headers of VXLAN packets (which are encapsulated). Non-encapsulated packets will be hashed according to the outer headers.
Showing the changes to include/uapi (1 of 3 files). Show all
Unified · Split
| @@ -97,8 +97,8 @@ struct mlx4_ib_create_srq_resp { · 96 unmodified lines | |||
| 97 | }; | 97 | }; |
| 98 | 98 | ||
| 99 | struct mlx4_ib_create_qp_rss { | 99 | struct mlx4_ib_create_qp_rss { |
| 100 | __u64 rx_hash_fields_mask; | 100 | __u64 rx_hash_fields_mask; /* Use enum mlx4_ib_rx_hash_fields */ |
| 101 | __u8 rx_hash_function; | 101 | __u8 rx_hash_function; /* Use enum mlx4_ib_rx_hash_function_flags */ |
| 102 | __u8 reserved[7]; | 102 | __u8 reserved[7]; |
| 103 | __u8 rx_hash_key[40]; | 103 | __u8 rx_hash_key[40]; |
| 104 | __u32 comp_mask; | 104 | __u32 comp_mask; |
| @@ -152,7 +152,8 @@ enum mlx4_ib_rx_hash_fields { · 47 unmodified lines | |||
| 152 | MLX4_IB_RX_HASH_SRC_PORT_TCP = 1 << 4, | 152 | MLX4_IB_RX_HASH_SRC_PORT_TCP = 1 << 4, |
| 153 | MLX4_IB_RX_HASH_DST_PORT_TCP = 1 << 5, | 153 | MLX4_IB_RX_HASH_DST_PORT_TCP = 1 << 5, |
| 154 | MLX4_IB_RX_HASH_SRC_PORT_UDP = 1 << 6, | 154 | MLX4_IB_RX_HASH_SRC_PORT_UDP = 1 << 6, |
| 155 | MLX4_IB_RX_HASH_DST_PORT_UDP = 1 << 7 | 155 | MLX4_IB_RX_HASH_DST_PORT_UDP = 1 << 7, |
| 156 | MLX4_IB_RX_HASH_INNER = 1ULL << 31, | ||
| 156 | }; | 157 | }; |
| 157 | 158 | ||
| 158 | #endif /* MLX4_ABI_USER_H */ | 159 | #endif /* MLX4_ABI_USER_H */ |