History

IB/mlx5: Introduce UAPIs to manage packet pacing

Introduce packet pacing uobject and its alloc and destroy methods. This uobject holds mlx5 packet pacing context according to the device specification and enables managing packet pacing device entries that are needed by DEVX applications.

Yishai Hadas committed 6 years ago

Commit 30f2fe41 parent 13260346 files · +165 −0Browse files

Showing the changes to include/uapi (2 of 6 files). Show all

Unified · Split

2 files
  1. include/uapi/rdma/mlx5_user_ioctl_cmds.h +17 −0
  2. include/uapi/rdma/mlx5_user_ioctl_verbs.h +4 −0
include/uapi/rdma/mlx5_user_ioctl_cmds.h+17−0
@@ -143,6 +143,22 @@ enum mlx5_ib_devx_umem_dereg_attrs { · 142 unmodified lines
143143 MLX5_IB_ATTR_DEVX_UMEM_DEREG_HANDLE = (1U << UVERBS_ID_NS_SHIFT),
144144 };
145145
146+enum mlx5_ib_pp_obj_methods {
147+ MLX5_IB_METHOD_PP_OBJ_ALLOC = (1U << UVERBS_ID_NS_SHIFT),
148+ MLX5_IB_METHOD_PP_OBJ_DESTROY,
149+};
150+
151+enum mlx5_ib_pp_alloc_attrs {
152+ MLX5_IB_ATTR_PP_OBJ_ALLOC_HANDLE = (1U << UVERBS_ID_NS_SHIFT),
153+ MLX5_IB_ATTR_PP_OBJ_ALLOC_CTX,
154+ MLX5_IB_ATTR_PP_OBJ_ALLOC_FLAGS,
155+ MLX5_IB_ATTR_PP_OBJ_ALLOC_INDEX,
156+};
157+
158+enum mlx5_ib_pp_obj_destroy_attrs {
159+ MLX5_IB_ATTR_PP_OBJ_DESTROY_HANDLE = (1U << UVERBS_ID_NS_SHIFT),
160+};
161+
146162 enum mlx5_ib_devx_umem_methods {
147163 MLX5_IB_METHOD_DEVX_UMEM_REG = (1U << UVERBS_ID_NS_SHIFT),
148164 MLX5_IB_METHOD_DEVX_UMEM_DEREG,
@@ -173,6 +189,7 @@ enum mlx5_ib_objects { · 24 unmodified lines
173189 MLX5_IB_OBJECT_DEVX_ASYNC_CMD_FD,
174190 MLX5_IB_OBJECT_DEVX_ASYNC_EVENT_FD,
175191 MLX5_IB_OBJECT_VAR,
192+ MLX5_IB_OBJECT_PP,
176193 };
177194
178195 enum mlx5_ib_flow_matcher_create_attrs {
include/uapi/rdma/mlx5_user_ioctl_verbs.h+4−0
@@ -73,5 +73,9 @@ struct mlx5_ib_uapi_devx_async_event_hdr { · 72 unmodified lines
7373 __u8 out_data[];
7474 };
7575
76+enum mlx5_ib_uapi_pp_alloc_flags {
77+ MLX5_IB_UAPI_PP_ALLOC_FLAGS_DEDICATED_INDEX = 1 << 0,
78+};
79+
7680 #endif
7781