mlx5dv_create_flow_matcher(3) mlx5 Programmer's Manual NAME mlx5dv_create_flow_matcher - creates a matcher to be used with mlx5dv_create_flow(3) SYNOPSIS #include struct mlx5dv_flow_matcher * mlx5dv_create_flow_matcher(struct ibv_context *context, struct mlx5dv_flow_matcher_attr *attr) DESCRIPTION mlx5dv_create_flow_matcher() creates a flow matcher (mask) to be used with mlx5dv_create_flow(3). ARGUMENTS Please see ibv_open_device(3) for context. attr struct mlx5dv_flow_matcher_attr { enum ibv_flow_attr_type type; uint32_t flags; /* From enum ibv_flow_flags */ uint16_t priority; uint8_t match_criteria_enable; /* Device spec format */ struct mlx5dv_flow_match_parameters *match_mask; uint64_t comp_mask; enum mlx5dv_flow_table_type ft_type; }; type Type of matcher to be created: IBV_FLOW_ATTR_NORMAL: Normal rule according to specification. flags special flags to control rule: 0: Nothing or zero value means matcher will store ingress flow rules. IBV_FLOW_ATTR_FLAGS_EGRESS: Specified this matcher will store egress flow rules. priority See ibv_create_flow(3). match_criteria_enable What match criteria is configured in match_mask, passed in device spec format. match_mask struct mlx5dv_flow_match_parameters { size_t match_sz; uint64_t match_buf[]; /* Device spec format */ }; match_sz Size in bytes of match_buf. match_buf Set which mask to be used, passed in device spec format. comp_mask MLX5DV_FLOW_MATCHER_MASK_FT_TYPE for ft_type ft_type Specified in which flow table type, the matcher will store the flow rules: MLX5DV_FLOW_TABLE_TYPE_NIC_RX: Specified this matcher will store ingress flow rules. MLX5DV_FLOW_TABLE_TYPE_NIC_TX Specified this matcher will store egress flow rules. MLX5DV_FLOW_TABLE_TYPE_FDB : Specified this matcher will store FDB rules. MLX5DV_FLOW_TABLE_TYPE_RDMA_RX: Specified this matcher will store ingress RDMA flow rules. MLX5DV_FLOW_TABLE_TYPE_RDMA_TX: Specified this matcher will store egress RDMA flow rules. RETURN VALUE mlx5dv_create_flow_matcher returns a pointer to mlx5dv_flow_matcher, on error NULL will be returned and errno will be set. SEE ALSO ibv_open_device(3), ibv_create_flow(3) AUTHOR Mark Bloch mlx5 2018-9-19 mlx5dv_create_flow_matcher(3)