Thursday, March 28, 2019 6:33 PM, Ori Kam:
> Subject: [PATCH v2 1/3] net/mlx5: prepare Direct Verbs for Direct Rule

> --- a/drivers/net/mlx5/mlx5_glue.h
> +++ b/drivers/net/mlx5/mlx5_glue.h
> @@ -55,6 +55,10 @@

[...]


>  enum mlx5dv_flow_table_type { flow_table_type = 0, };  #endif
> 
> +#ifndef HAVE_IBV_FLOW_DEVX_COUNTERS
> +#define MLX5DV_FLOW_ACTION_COUNTER_DEVX 0 #endif
> +
>  #ifndef HAVE_IBV_DEVX_OBJ
>  struct mlx5dv_devx_obj;
>  #endif
> @@ -98,7 +102,7 @@ struct mlx5_glue {
>       struct ibv_flow *(*create_flow)(struct ibv_qp *qp,
>                                       struct ibv_flow_attr *flow);
>       int (*destroy_flow)(struct ibv_flow *flow_id);
> -     int (*destroy_flow_action)(struct ibv_flow_action *action);
> +     int (*destroy_flow_action)(void *action);
>       struct ibv_qp *(*create_qp)(struct ibv_pd *pd,
>                                   struct ibv_qp_init_attr *qp_init_attr);
>       struct ibv_qp *(*create_qp_ex)
> @@ -160,19 +164,17 @@ struct mlx5_glue {
>       int (*dv_destroy_flow_matcher)(struct mlx5dv_flow_matcher
> *matcher);
>       struct ibv_flow *(*dv_create_flow)(struct mlx5dv_flow_matcher
> *matcher,
>                         struct mlx5dv_flow_match_parameters
> *match_value,
> -                       size_t num_actions,
> -                       struct mlx5dv_flow_action_attr *actions_attr);
> -     struct ibv_flow_action *(*dv_create_flow_action_packet_reformat)
> -             (struct ibv_context *ctx,
> -              size_t data_sz,
> -              void *data,
> +                       size_t num_actions, void *actions[]);
> +     void *(*dv_create_flow_action_counter)(void *obj, uint32_t
> offset);
> +     void *(*dv_create_flow_action_dest_ibv_qp)(void *qp);
> +     void *(*dv_create_flow_action_modify_header)
> +             (struct ibv_context *ctx, size_t actions_sz, uint64_t actions[],
> +              enum mlx5dv_flow_table_type ft_type);
> +     void *(*dv_create_flow_action_packet_reformat)
> +             (struct ibv_context *ctx, size_t data_sz, void *data,
>                enum mlx5dv_flow_action_packet_reformat_type
> reformat_type,
>                enum mlx5dv_flow_table_type ft_type);
> -     struct ibv_flow_action *(*dv_create_flow_action_modify_header)
> -                                     (struct ibv_context *ctx,
> -                                      size_t actions_sz,
> -                                      uint64_t actions[],
> -                                      enum mlx5dv_flow_table_type
> ft_type);
> +     void *(*dv_create_flow_action_tag)(uint32_t tag);
>       struct ibv_context *(*dv_open_device)(struct ibv_device *device);
>       struct mlx5dv_devx_obj *(*devx_obj_create)
>                                       (struct ibv_context *ctx,

Due to those changes you must bump up the LIB_GLUE_VERSION . 

> --
> 1.8.3.1

Reply via email to