mlx5dv_create_flow_matcher

Section: mlx5 Programmer\[cq]s Manual (3)
Updated: 2018-9-19
Page Index
 

NAME

mlx5dv_create_flow_matcher - creates a matcher to be used with mlx5dv_create_flow(3)  

SYNOPSIS


#include <infiniband/mlx5dv.h>

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 <markb@mellanox.com>


 

Index

NAME
SYNOPSIS
DESCRIPTION
ARGUMENTS
attr
match_mask
ft_type
RETURN VALUE
SEE ALSO
AUTHOR