include/uapi/rdma/mlx5-abi.h
Source file repositories/reference/linux-study-clean/include/uapi/rdma/mlx5-abi.h
File Facts
- System
- Linux kernel
- Corpus path
include/uapi/rdma/mlx5-abi.h- Extension
.h- Size
- 14059 bytes
- Lines
- 531
- Domain
- Repository Root And Misc
- Bucket
- include
- Inferred role
- Repository Root And Misc: implementation source
- Status
- source implementation candidate
Why This File Exists
Top-level or miscellaneous repository surface. Use this as map coverage unless a later manual pass promotes the file into a deeper subsystem dossier.
- Top-level or miscellaneous repository surface. Use this as map coverage unless a later manual pass promotes the file into a deeper subsystem dossier.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
linux/types.hlinux/if_ether.hrdma/ib_user_ioctl_verbs.hrdma/mlx5_user_ioctl_verbs.h
Detected Declarations
struct mlx5_ib_alloc_ucontext_reqstruct mlx5_ib_alloc_ucontext_req_v2struct mlx5_ib_alloc_ucontext_respstruct mlx5_ib_alloc_pd_respstruct mlx5_ib_tso_capsstruct mlx5_ib_rss_capsstruct mlx5_ib_cqe_comp_capsstruct mlx5_packet_pacing_capsstruct mlx5_ib_sw_parsing_capsstruct mlx5_ib_striding_rq_capsstruct mlx5_ib_dci_streams_capsstruct mlx5_ib_query_device_respstruct mlx5_ib_create_cqstruct mlx5_ib_create_cq_respstruct mlx5_ib_resize_cqstruct mlx5_ib_create_srqstruct mlx5_ib_create_srq_respstruct mlx5_ib_create_qp_dci_streamsstruct mlx5_ib_create_qpstruct mlx5_ib_create_qp_rssstruct mlx5_ib_create_qp_respstruct mlx5_ib_alloc_mwstruct mlx5_ib_create_wqstruct mlx5_ib_create_ah_respstruct mlx5_ib_burst_infostruct mlx5_ib_modify_qpstruct mlx5_ib_modify_qp_respstruct mlx5_ib_create_wq_respstruct mlx5_ib_create_rwq_ind_tbl_respstruct mlx5_ib_modify_wqstruct mlx5_ib_clock_infostruct mlx5_ib_flow_counters_descstruct mlx5_ib_flow_counters_datastruct mlx5_ib_create_flowenum mlx5_lib_capsenum mlx5_ib_alloc_uctx_v2_flagsenum mlx5_ib_alloc_ucontext_resp_maskenum mlx5_user_cmds_supp_uhwenum mlx5_user_inline_modeenum mlx5_ib_cqe_comp_res_formatenum mlx5_ib_packet_pacing_cap_flagsenum mlx5_ib_mpw_capsenum mlx5_ib_sw_parsing_offloadsenum mlx5_ib_query_dev_resp_flagsenum mlx5_ib_tunnel_offloadsenum mlx5_ib_create_cq_flagsenum mlx5_rx_hash_function_flagsenum mlx5_rx_hash_fields
Annotated Snippet
struct mlx5_ib_alloc_ucontext_req {
__u32 total_num_bfregs;
__u32 num_low_latency_bfregs;
};
enum mlx5_lib_caps {
MLX5_LIB_CAP_4K_UAR = (__u64)1 << 0,
MLX5_LIB_CAP_DYN_UAR = (__u64)1 << 1,
};
enum mlx5_ib_alloc_uctx_v2_flags {
MLX5_IB_ALLOC_UCTX_DEVX = 1 << 0,
};
struct mlx5_ib_alloc_ucontext_req_v2 {
__u32 total_num_bfregs;
__u32 num_low_latency_bfregs;
__u32 flags;
__u32 comp_mask;
__u8 max_cqe_version;
__u8 reserved0;
__u16 reserved1;
__u32 reserved2;
__aligned_u64 lib_caps;
};
enum mlx5_ib_alloc_ucontext_resp_mask {
MLX5_IB_ALLOC_UCONTEXT_RESP_MASK_CORE_CLOCK_OFFSET = 1UL << 0,
MLX5_IB_ALLOC_UCONTEXT_RESP_MASK_DUMP_FILL_MKEY = 1UL << 1,
MLX5_IB_ALLOC_UCONTEXT_RESP_MASK_ECE = 1UL << 2,
MLX5_IB_ALLOC_UCONTEXT_RESP_MASK_SQD2RTS = 1UL << 3,
MLX5_IB_ALLOC_UCONTEXT_RESP_MASK_REAL_TIME_TS = 1UL << 4,
MLX5_IB_ALLOC_UCONTEXT_RESP_MASK_MKEY_UPDATE_TAG = 1UL << 5,
};
enum mlx5_user_cmds_supp_uhw {
MLX5_USER_CMDS_SUPP_UHW_QUERY_DEVICE = 1 << 0,
MLX5_USER_CMDS_SUPP_UHW_CREATE_AH = 1 << 1,
};
/* The eth_min_inline response value is set to off-by-one vs the FW
* returned value to allow user-space to deal with older kernels.
*/
enum mlx5_user_inline_mode {
MLX5_USER_INLINE_MODE_NA,
MLX5_USER_INLINE_MODE_NONE,
MLX5_USER_INLINE_MODE_L2,
MLX5_USER_INLINE_MODE_IP,
MLX5_USER_INLINE_MODE_TCP_UDP,
};
enum {
MLX5_USER_ALLOC_UCONTEXT_FLOW_ACTION_FLAGS_ESP_AES_GCM = 1 << 0,
MLX5_USER_ALLOC_UCONTEXT_FLOW_ACTION_FLAGS_ESP_AES_GCM_REQ_METADATA = 1 << 1,
MLX5_USER_ALLOC_UCONTEXT_FLOW_ACTION_FLAGS_ESP_AES_GCM_SPI_STEERING = 1 << 2,
MLX5_USER_ALLOC_UCONTEXT_FLOW_ACTION_FLAGS_ESP_AES_GCM_FULL_OFFLOAD = 1 << 3,
MLX5_USER_ALLOC_UCONTEXT_FLOW_ACTION_FLAGS_ESP_AES_GCM_TX_IV_IS_ESN = 1 << 4,
};
struct mlx5_ib_alloc_ucontext_resp {
__u32 qp_tab_size;
__u32 bf_reg_size;
__u32 tot_bfregs;
__u32 cache_line_size;
__u16 max_sq_desc_sz;
__u16 max_rq_desc_sz;
__u32 max_send_wqebb;
__u32 max_recv_wr;
__u32 max_srq_recv_wr;
__u16 num_ports;
__u16 flow_action_flags;
__u32 comp_mask;
__u32 response_length;
__u8 cqe_version;
__u8 cmds_supp_uhw;
__u8 eth_min_inline;
__u8 clock_info_versions;
__aligned_u64 hca_core_clock_offset;
__u32 log_uar_size;
__u32 num_uars_per_page;
__u32 num_dyn_bfregs;
__u32 dump_fill_mkey;
};
struct mlx5_ib_alloc_pd_resp {
__u32 pdn;
};
struct mlx5_ib_tso_caps {
__u32 max_tso; /* Maximum tso payload size in bytes */
Annotation
- Immediate include surface: `linux/types.h`, `linux/if_ether.h`, `rdma/ib_user_ioctl_verbs.h`, `rdma/mlx5_user_ioctl_verbs.h`.
- Detected declarations: `struct mlx5_ib_alloc_ucontext_req`, `struct mlx5_ib_alloc_ucontext_req_v2`, `struct mlx5_ib_alloc_ucontext_resp`, `struct mlx5_ib_alloc_pd_resp`, `struct mlx5_ib_tso_caps`, `struct mlx5_ib_rss_caps`, `struct mlx5_ib_cqe_comp_caps`, `struct mlx5_packet_pacing_caps`, `struct mlx5_ib_sw_parsing_caps`, `struct mlx5_ib_striding_rq_caps`.
- Atlas domain: Repository Root And Misc / include.
- Implementation status: source implementation candidate.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.