Provided by: libibverbs-dev_50.0-2build2_amd64 bug

NAME

       mlx5dv_create_flow - creates a steering flow rule

SYNOPSIS

              #include <infiniband/mlx5dv.h>

              struct ibv_flow *
              mlx5dv_create_flow(struct mlx5dv_flow_matcher *flow_matcher,
                         struct mlx5dv_flow_match_parameters *match_value,
                         size_t num_actions,
                         struct mlx5dv_flow_action_attr actions_attr[])

DESCRIPTION

       mlx5dv_create_flow() creates a steering flow rule with the ability to specify specific driver properties.

ARGUMENTS

       Please see mlx5dv_create_flow_matcher(3) for flow_matcher and match_value.

       num_actions
              Specifies how many actions are passed in actions_attr

   actions_attr
              struct mlx5dv_flow_action_attr {
                  enum mlx5dv_flow_action_type type;
                  union {
                      struct ibv_qp *qp;
                      struct ibv_counters *counter;
                      struct ibv_flow_action *action;
                      uint32_t tag_value;
                      struct mlx5dv_devx_obj *obj;
                  };
              };

       type   MLX5DV_FLOW_ACTION_DEST_IBV_QP    The    QP    passed    will   receive   the   matched   packets.
              MLX5DV_FLOW_ACTION_IBV_FLOW_ACTION The flow action to be applied.  MLX5DV_FLOW_ACTION_TAG Flow tag
              to  be  provided in work completion.  MLX5DV_FLOW_ACTION_DEST_DEVX The DEVX destination object for
              the matched packets.  MLX5DV_FLOW_ACTION_COUNTERS_DEVX The DEVX counter  object  for  the  matched
              packets.   MLX5DV_FLOW_ACTION_DEFAULT_MISS  Steer  the  packet  to  the  default miss destination.
              MLX5DV_FLOW_ACTION_DROP Action is dropping the matched packet.

       qp     QP passed, to be used with type MLX5DV_FLOW_ACTION_DEST_IBV_QP.

       action Flow    action,    to    be    used    with    type     MLX5DV_FLOW_ACTION_IBV_FLOW_ACTION     see
              mlx5dv_create_flow_action_modify_header(3) and mlx5dv_create_flow_action_packet_reformat(3).

       tag_value
              tag  value  to  be  passed in the work completion, to be used with type MLX5DV_FLOW_ACTION_TAG see
              ibv_create_cq_ex(3).

       obj    DEVX    object,    to    be    used    with    type     MLX5DV_FLOW_ACTION_DEST_DEVX     or     by
              MLX5DV_FLOW_ACTION_COUNTERS_DEVX.

RETURN VALUE

       mlx5dv_create_flow  returns  a pointer to the created flow rule, on error NULL will be returned and errno
       will be set.

SEE ALSO

       mlx5dv_create_flow_action_modify_header(3),                 mlx5dv_create_flow_action_packet_reformat(3),
       mlx5dv_create_flow_matcher(3),      mlx5dv_create_qp(3),      ibv_create_qp_ex(3)     ibv_create_cq_ex(3)
       ibv_create_counters(3)

AUTHOR

       Mark Bloch <marb@mellanox.com>