6 #ifndef RTE_FLOW_DRIVER_H_
7 #define RTE_FLOW_DRIVER_H_
66 (
struct rte_eth_dev *,
69 const struct rte_flow_action [],
72 struct rte_flow *(*create)
73 (
struct rte_eth_dev *,
76 const struct rte_flow_action [],
80 (
struct rte_eth_dev *,
85 (
struct rte_eth_dev *,
89 (
struct rte_eth_dev *,
91 const struct rte_flow_action *,
96 (
struct rte_eth_dev *,
101 (
struct rte_eth_dev *dev,
106 (
struct rte_eth_dev *dev,
108 uint32_t nb_contexts,
129 #define RTE_FLOW_EXPAND_RSS_NEXT(...) \
190 int graph_root_index);
__rte_experimental int rte_flow_expand_rss(struct rte_flow_expand_rss *buf, size_t size, const struct rte_flow_item *pattern, uint64_t types, const struct rte_flow_expand_node graph[], int graph_root_index)
int(* validate)(struct rte_eth_dev *, const struct rte_flow_attr *, const struct rte_flow_item[], const struct rte_flow_action[], struct rte_flow_error *)
int(* dev_dump)(struct rte_eth_dev *dev, FILE *file, struct rte_flow_error *error)
int(* query)(struct rte_eth_dev *, struct rte_flow *, const struct rte_flow_action *, void *, struct rte_flow_error *)
int(* get_aged_flows)(struct rte_eth_dev *dev, void **context, uint32_t nb_contexts, struct rte_flow_error *err)
struct rte_flow_item * pattern
int(* isolate)(struct rte_eth_dev *, int, struct rte_flow_error *)
int(* flush)(struct rte_eth_dev *, struct rte_flow_error *)
enum rte_flow_item_type type
int(* destroy)(struct rte_eth_dev *, struct rte_flow *, struct rte_flow_error *)
const struct rte_flow_ops * rte_flow_ops_get(uint16_t port_id, struct rte_flow_error *error)