History

IB/mlx5: Add tunneling offloads support

The device can support receive Stateless Offloads for the inner packet's fields only when the packet is processed by TIR which is enabled to support tunneling. Otherwise, the device treats the packet as an ordinary non-tunneling packet and receive offloads can be done only for the outer packet's field. In order to enable receive Stateless Offloading support for incoming tunneling traffic the TIR should be created with tunneled_offload_en. Tunneling offloads is supported only be raw ethernet QP. This patch includes: * New QP creation flag for tunneling offloads. * Reports device capabilities.

Maor Gottlieb committed 9 years ago

Commit f95ef6c1 parent 4d350f14 files · +61 −6Browse files

Showing the changes to include/uapi (1 of 4 files). Show all

Unified · Split

include/uapi/rdma/mlx5-abi.h+10−1
@@ -39,6 +39,7 @@ · 38 unmodified lines
3939 enum {
4040 MLX5_QP_FLAG_SIGNATURE = 1 << 0,
4141 MLX5_QP_FLAG_SCATTER_CQE = 1 << 1,
42+ MLX5_QP_FLAG_TUNNEL_OFFLOADS = 1 << 2,
4243 };
4344
4445 enum {
@@ -209,6 +210,12 @@ enum mlx5_ib_query_dev_resp_flags { · 164 unmodified lines
209210 MLX5_IB_QUERY_DEV_RESP_FLAGS_CQE_128B_PAD = 1 << 1,
210211 };
211212
213+enum mlx5_ib_tunnel_offloads {
214+ MLX5_IB_TUNNELED_OFFLOADS_VXLAN = 1 << 0,
215+ MLX5_IB_TUNNELED_OFFLOADS_GRE = 1 << 1,
216+ MLX5_IB_TUNNELED_OFFLOADS_GENEVE = 1 << 2
217+};
218+
212219 struct mlx5_ib_query_device_resp {
213220 __u32 comp_mask;
214221 __u32 response_length;
@@ -220,6 +227,8 @@ struct mlx5_ib_query_device_resp { · 5 unmodified lines
220227 __u32 flags; /* Use enum mlx5_ib_query_dev_resp_flags */
221228 struct mlx5_ib_sw_parsing_caps sw_parsing_caps;
222229 struct mlx5_ib_striding_rq_caps striding_rq_caps;
230+ __u32 tunnel_offloads_caps; /* enum mlx5_ib_tunnel_offloads */
231+ __u32 reserved;
223232 };
224233
225234 enum mlx5_ib_create_cq_flags {
@@ -304,7 +313,7 @@ struct mlx5_ib_create_qp_rss { · 78 unmodified lines
304313 __u8 reserved[6];
305314 __u8 rx_hash_key[128]; /* valid only for Toeplitz */
306315 __u32 comp_mask;
307− __u32 reserved1;
316+ __u32 flags;
308317 };
309318
310319 struct mlx5_ib_create_qp_resp {

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t