rte_flow_ops(3) DPDK rte_flow_ops(3) NAME rte_flow_ops SYNOPSIS #include <rte_flow_driver.h> Data Fields 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 *) struct rte_flow *(* create )(struct rte_eth_dev *, const struct rte_flow_attr *, const struct rte_flow_item[], const struct rte_flow_action[], struct rte_flow_error *) int(* destroy )(struct rte_eth_dev *, struct rte_flow *, struct rte_flow_error *) int(* flush )(struct rte_eth_dev *, struct rte_flow_error *) int(* query )(struct rte_eth_dev *, struct rte_flow *, const struct rte_flow_action *, void *, struct rte_flow_error *) int(* isolate )(struct rte_eth_dev *, int, struct rte_flow_error *) int(* dev_dump )(struct rte_eth_dev *dev, struct rte_flow *flow, FILE *file, struct rte_flow_error *error) int(* get_aged_flows )(struct rte_eth_dev *dev, void **context, uint32_t nb_contexts, struct rte_flow_error *err) int(* get_q_aged_flows )(struct rte_eth_dev *dev, uint32_t queue_id, void **contexts, uint32_t nb_contexts, struct rte_flow_error *error) struct rte_flow_action_handle *(* action_handle_create )(struct rte_eth_dev *dev, const struct rte_flow_indir_action_conf *conf, const struct rte_flow_action *action, struct rte_flow_error *error) int(* action_handle_destroy )(struct rte_eth_dev *dev, struct rte_flow_ac- tion_handle *handle, struct rte_flow_error *error) int(* action_handle_update )(struct rte_eth_dev *dev, struct rte_flow_ac- tion_handle *handle, const void *update, struct rte_flow_error *error) int(* action_handle_query )(struct rte_eth_dev *dev, const struct rte_flow_action_handle *handle, void *data, struct rte_flow_error *er- ror) int(* action_handle_query_update )(struct rte_eth_dev *dev, struct rte_flow_action_handle *handle, const void *update, void *query, enum rte_flow_query_update_mode qu_mode, struct rte_flow_error *error) struct rte_flow_action_list_handle *(* action_list_handle_create )(struct rte_eth_dev *dev, const struct rte_flow_indir_action_conf *conf, const struct rte_flow_action actions[], struct rte_flow_error *error) int(* action_list_handle_destroy )(struct rte_eth_dev *dev, struct rte_flow_action_list_handle *handle, struct rte_flow_error *error) int(* tunnel_decap_set )(struct rte_eth_dev *dev, struct rte_flow_tunnel *tunnel, struct rte_flow_action **pmd_actions, uint32_t *num_of_ac- tions, struct rte_flow_error *err) int(* tunnel_match )(struct rte_eth_dev *dev, struct rte_flow_tunnel *tun- nel, struct rte_flow_item **pmd_items, uint32_t *num_of_items, struct rte_flow_error *err) int(* get_restore_info )(struct rte_eth_dev *dev, struct rte_mbuf *m, struct rte_flow_restore_info *info, struct rte_flow_error *err) int(* tunnel_action_decap_release )(struct rte_eth_dev *dev, struct rte_flow_action *pmd_actions, uint32_t num_of_actions, struct rte_flow_error *err) int(* tunnel_item_release )(struct rte_eth_dev *dev, struct rte_flow_item *pmd_items, uint32_t num_of_items, struct rte_flow_error *err) int(* pick_transfer_proxy )(struct rte_eth_dev *dev, uint16_t *proxy_port_id, struct rte_flow_error *error) int(* info_get )(struct rte_eth_dev *dev, struct rte_flow_port_info *port_info, struct rte_flow_queue_info *queue_info, struct rte_flow_er- ror *err) int(* configure )(struct rte_eth_dev *dev, const struct rte_flow_port_attr *port_attr, uint16_t nb_queue, const struct rte_flow_queue_attr *queue_attr[], struct rte_flow_error *err) struct rte_flow_pattern_template *(* pattern_template_create )(struct rte_eth_dev *dev, const struct rte_flow_pattern_template_attr *tem- plate_attr, const struct rte_flow_item pattern[], struct rte_flow_error *err) int(* pattern_template_destroy )(struct rte_eth_dev *dev, struct rte_flow_pattern_template *pattern_template, struct rte_flow_error *err) struct rte_flow_actions_template *(* actions_template_create )(struct rte_eth_dev *dev, const struct rte_flow_actions_template_attr *tem- plate_attr, const struct rte_flow_action actions[], const struct rte_flow_action masks[], struct rte_flow_error *err) int(* actions_template_destroy )(struct rte_eth_dev *dev, struct rte_flow_actions_template *actions_template, struct rte_flow_error *err) struct rte_flow_template_table *(* template_table_create )(struct rte_eth_dev *dev, const struct rte_flow_template_table_attr *ta- ble_attr, struct rte_flow_pattern_template *pattern_templates[], uint8_t nb_pattern_templates, struct rte_flow_actions_template *ac- tions_templates[], uint8_t nb_actions_templates, struct rte_flow_error *err) int(* template_table_destroy )(struct rte_eth_dev *dev, struct rte_flow_template_table *template_table, struct rte_flow_error *err) int(* group_set_miss_actions )(struct rte_eth_dev *dev, uint32_t group_id, const struct rte_flow_group_attr *attr, const struct rte_flow_action actions[], struct rte_flow_error *err) int(* actions_update )(struct rte_eth_dev *dev, struct rte_flow *flow, const struct rte_flow_action actions[], struct rte_flow_error *error) int(* action_list_handle_query_update )(struct rte_eth_dev *dev, const struct rte_flow_action_list_handle *handle, const void **update, void **query, enum rte_flow_query_update_mode mode, struct rte_flow_error *error) int(* flow_calc_table_hash )(struct rte_eth_dev *dev, const struct rte_flow_template_table *table, const struct rte_flow_item pattern[], uint8_t pattern_template_index, uint32_t *hash, struct rte_flow_error *error) int(* flow_calc_encap_hash )(struct rte_eth_dev *dev, const struct rte_flow_item pattern[], enum rte_flow_encap_hash_field dest_field, uint8_t *hash, struct rte_flow_error *error) int(* flow_template_table_resize )(struct rte_eth_dev *dev, struct rte_flow_template_table *table, uint32_t nb_rules, struct rte_flow_er- ror *error) int(* flow_update_resized )(struct rte_eth_dev *dev, uint32_t queue, const struct rte_flow_op_attr *attr, struct rte_flow *rule, void *user_data, struct rte_flow_error *error) int(* flow_template_table_resize_complete )(struct rte_eth_dev *dev, struct rte_flow_template_table *table, struct rte_flow_error *error) Detailed Description Generic flow operations structure implemented and returned by PMDs. These callback functions are not supposed to be used by applications di- rectly, which must rely on the API defined in rte_flow.h. Public-facing wrapper functions perform a few consistency checks so that unimplemented (i.e. NULL) callbacks simply return -ENOTSUP. These callbacks otherwise only differ by their first argument (with port ID already re- solved to a pointer to struct rte_eth_dev). Definition at line 39 of file rte_flow_driver.h. Field Documentation int(* validate) (struct rte_eth_dev *, const struct rte_flow_attr *, const struct rte_flow_item[], const struct rte_flow_action[], struct rte_flow_er- ror *) See rte_flow_validate(). Definition at line 41 of file rte_flow_driver.h. struct rte_flow *(* create) (struct rte_eth_dev *, const struct rte_flow_attr *, const struct rte_flow_item[], const struct rte_flow_action[], struct rte_flow_error *) See rte_flow_create(). Definition at line 41 of file rte_flow_driver.h. int(* destroy) (struct rte_eth_dev *, struct rte_flow *, struct rte_flow_er- ror *) See rte_flow_destroy(). Definition at line 55 of file rte_flow_driver.h. int(* flush) (struct rte_eth_dev *, struct rte_flow_error *) See rte_flow_flush(). Definition at line 60 of file rte_flow_driver.h. int(* query) (struct rte_eth_dev *, struct rte_flow *, const struct rte_flow_action *, void *, struct rte_flow_error *) See rte_flow_query(). Definition at line 64 of file rte_flow_driver.h. int(* isolate) (struct rte_eth_dev *, int, struct rte_flow_error *) See rte_flow_isolate(). Definition at line 71 of file rte_flow_driver.h. int(* dev_dump) (struct rte_eth_dev *dev, struct rte_flow *flow, FILE *file, struct rte_flow_error *error) See rte_flow_dev_dump(). Definition at line 76 of file rte_flow_driver.h. int(* get_aged_flows) (struct rte_eth_dev *dev, void **context, uint32_t nb_contexts, struct rte_flow_error *err) See rte_flow_get_aged_flows() Definition at line 82 of file rte_flow_driver.h. int(* get_q_aged_flows) (struct rte_eth_dev *dev, uint32_t queue_id, void **contexts, uint32_t nb_contexts, struct rte_flow_error *error) See rte_flow_get_q_aged_flows() Definition at line 88 of file rte_flow_driver.h. struct rte_flow_action_handle *(* action_handle_create) (struct rte_eth_dev *dev, const struct rte_flow_indir_action_conf *conf, const struct rte_flow_action *action, struct rte_flow_error *error) See rte_flow_action_handle_create() Definition at line 88 of file rte_flow_driver.h. int(* action_handle_destroy) (struct rte_eth_dev *dev, struct rte_flow_ac- tion_handle *handle, struct rte_flow_error *error) See rte_flow_action_handle_destroy() Definition at line 101 of file rte_flow_driver.h. int(* action_handle_update) (struct rte_eth_dev *dev, struct rte_flow_ac- tion_handle *handle, const void *update, struct rte_flow_error *error) See rte_flow_action_handle_update() Definition at line 106 of file rte_flow_driver.h. int(* action_handle_query) (struct rte_eth_dev *dev, const struct rte_flow_action_handle *handle, void *data, struct rte_flow_error *error) See rte_flow_action_handle_query() Definition at line 112 of file rte_flow_driver.h. int(* action_handle_query_update) (struct rte_eth_dev *dev, struct rte_flow_action_handle *handle, const void *update, void *query, enum rte_flow_query_update_mode qu_mode, struct rte_flow_error *error) See rte_flow_action_handle_query_update() Definition at line 118 of file rte_flow_driver.h. struct rte_flow_action_list_handle *(* action_list_handle_create) (struct rte_eth_dev *dev, const struct rte_flow_indir_action_conf *conf, const struct rte_flow_action actions[], struct rte_flow_error *error) See also rte_flow_action_list_handle_create() Definition at line 118 of file rte_flow_driver.h. int(* action_list_handle_destroy) (struct rte_eth_dev *dev, struct rte_flow_action_list_handle *handle, struct rte_flow_error *error) See also rte_flow_action_list_handle_destroy() Definition at line 131 of file rte_flow_driver.h. int(* tunnel_decap_set) (struct rte_eth_dev *dev, struct rte_flow_tunnel *tunnel, struct rte_flow_action **pmd_actions, uint32_t *num_of_actions, struct rte_flow_error *err) See rte_flow_tunnel_decap_set() Definition at line 136 of file rte_flow_driver.h. int(* tunnel_match) (struct rte_eth_dev *dev, struct rte_flow_tunnel *tunnel, struct rte_flow_item **pmd_items, uint32_t *num_of_items, struct rte_flow_error *err) See rte_flow_tunnel_match() Definition at line 143 of file rte_flow_driver.h. int(* get_restore_info) (struct rte_eth_dev *dev, struct rte_mbuf *m, struct rte_flow_restore_info *info, struct rte_flow_error *err) See rte_flow_get_rte_flow_restore_info() Definition at line 150 of file rte_flow_driver.h. int(* tunnel_action_decap_release) (struct rte_eth_dev *dev, struct rte_flow_action *pmd_actions, uint32_t num_of_actions, struct rte_flow_er- ror *err) See rte_flow_action_tunnel_decap_release() Definition at line 156 of file rte_flow_driver.h. int(* tunnel_item_release) (struct rte_eth_dev *dev, struct rte_flow_item *pmd_items, uint32_t num_of_items, struct rte_flow_error *err) See rte_flow_item_release() Definition at line 162 of file rte_flow_driver.h. int(* pick_transfer_proxy) (struct rte_eth_dev *dev, uint16_t *proxy_port_id, struct rte_flow_error *error) See rte_flow_pick_transfer_proxy() Definition at line 168 of file rte_flow_driver.h. int(* info_get) (struct rte_eth_dev *dev, struct rte_flow_port_info *port_info, struct rte_flow_queue_info *queue_info, struct rte_flow_error *err) See rte_flow_info_get() Definition at line 181 of file rte_flow_driver.h. int(* configure) (struct rte_eth_dev *dev, const struct rte_flow_port_attr *port_attr, uint16_t nb_queue, const struct rte_flow_queue_attr *queue_attr[], struct rte_flow_error *err) See rte_flow_configure() Definition at line 187 of file rte_flow_driver.h. struct rte_flow_pattern_template *(* pattern_template_create) (struct rte_eth_dev *dev, const struct rte_flow_pattern_template_attr *tem- plate_attr, const struct rte_flow_item pattern[], struct rte_flow_error *err) See rte_flow_pattern_template_create() Definition at line 187 of file rte_flow_driver.h. int(* pattern_template_destroy) (struct rte_eth_dev *dev, struct rte_flow_pattern_template *pattern_template, struct rte_flow_error *err) See rte_flow_pattern_template_destroy() Definition at line 200 of file rte_flow_driver.h. struct rte_flow_actions_template *(* actions_template_create) (struct rte_eth_dev *dev, const struct rte_flow_actions_template_attr *tem- plate_attr, const struct rte_flow_action actions[], const struct rte_flow_action masks[], struct rte_flow_error *err) See rte_flow_actions_template_create() Definition at line 200 of file rte_flow_driver.h. int(* actions_template_destroy) (struct rte_eth_dev *dev, struct rte_flow_ac- tions_template *actions_template, struct rte_flow_error *err) See rte_flow_actions_template_destroy() Definition at line 212 of file rte_flow_driver.h. struct rte_flow_template_table *(* template_table_create) (struct rte_eth_dev *dev, const struct rte_flow_template_table_attr *table_attr, struct rte_flow_pattern_template *pattern_templates[], uint8_t nb_pattern_tem- plates, struct rte_flow_actions_template *actions_templates[], uint8_t nb_actions_templates, struct rte_flow_error *err) See rte_flow_template_table_create() Definition at line 212 of file rte_flow_driver.h. int(* template_table_destroy) (struct rte_eth_dev *dev, struct rte_flow_tem- plate_table *template_table, struct rte_flow_error *err) See rte_flow_template_table_destroy() Definition at line 226 of file rte_flow_driver.h. int(* group_set_miss_actions) (struct rte_eth_dev *dev, uint32_t group_id, const struct rte_flow_group_attr *attr, const struct rte_flow_action ac- tions[], struct rte_flow_error *err) See rte_flow_group_set_miss_actions() Definition at line 231 of file rte_flow_driver.h. int(* actions_update) (struct rte_eth_dev *dev, struct rte_flow *flow, const struct rte_flow_action actions[], struct rte_flow_error *error) See rte_flow_actions_update(). Definition at line 238 of file rte_flow_driver.h. int(* action_list_handle_query_update) (struct rte_eth_dev *dev, const struct rte_flow_action_list_handle *handle, const void **update, void **query, enum rte_flow_query_update_mode mode, struct rte_flow_error *error) See also rte_flow_action_list_handle_query_update() Definition at line 244 of file rte_flow_driver.h. int(* flow_calc_table_hash) (struct rte_eth_dev *dev, const struct rte_flow_template_table *table, const struct rte_flow_item pattern[], uint8_t pattern_template_index, uint32_t *hash, struct rte_flow_error *er- ror) See also rte_flow_calc_table_hash() Definition at line 251 of file rte_flow_driver.h. int(* flow_calc_encap_hash) (struct rte_eth_dev *dev, const struct rte_flow_item pattern[], enum rte_flow_encap_hash_field dest_field, uint8_t *hash, struct rte_flow_error *error) See also rte_flow_calc_encap_hash() Definition at line 256 of file rte_flow_driver.h. int(* flow_template_table_resize) (struct rte_eth_dev *dev, struct rte_flow_template_table *table, uint32_t nb_rules, struct rte_flow_error *error) See also rte_flow_template_table_resize() Definition at line 261 of file rte_flow_driver.h. int(* flow_update_resized) (struct rte_eth_dev *dev, uint32_t queue, const struct rte_flow_op_attr *attr, struct rte_flow *rule, void *user_data, struct rte_flow_error *error) See also rte_flow_async_update_resized() Definition at line 266 of file rte_flow_driver.h. int(* flow_template_table_resize_complete) (struct rte_eth_dev *dev, struct rte_flow_template_table *table, struct rte_flow_error *error) See also rte_flow_template_table_resize_complete() Definition at line 271 of file rte_flow_driver.h. Author Generated automatically by Doxygen for DPDK from the source code. Version 25.11.0 Thu Aug 27 2026 rte_flow_ops(3)
NAME | SYNOPSIS | Detailed Description | Field Documentation | Author
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=destroy&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>
