X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=examples%2Fip_pipeline%2Fpipeline.h;h=a953a29fa83889297d7625272d06aef2d4c89183;hb=a9dbe180222680edf8c49e86791f972549ce5be3;hp=08b2555c1e5c47f70871403cd56dcc17e5ca7b14;hpb=6b1b3c3c9d30fea58064fd8d61e11cd0e6157203;p=dpdk.git diff --git a/examples/ip_pipeline/pipeline.h b/examples/ip_pipeline/pipeline.h index 08b2555c1e..a953a29fa8 100644 --- a/examples/ip_pipeline/pipeline.h +++ b/examples/ip_pipeline/pipeline.h @@ -260,6 +260,7 @@ struct table_rule_match { struct table_rule_action { uint64_t action_mask; struct rte_table_action_fwd_params fwd; + struct rte_table_action_lb_params lb; struct rte_table_action_mtr_params mtr; struct rte_table_action_tm_params tm; struct rte_table_action_encap_params encap; @@ -269,6 +270,12 @@ struct table_rule_action { struct rte_table_action_time_params time; }; +int +pipeline_port_in_stats_read(const char *pipeline_name, + uint32_t port_id, + struct rte_pipeline_port_in_stats *stats, + int clear); + int pipeline_port_in_enable(const char *pipeline_name, uint32_t port_id); @@ -277,4 +284,85 @@ int pipeline_port_in_disable(const char *pipeline_name, uint32_t port_id); +int +pipeline_port_out_stats_read(const char *pipeline_name, + uint32_t port_id, + struct rte_pipeline_port_out_stats *stats, + int clear); + +int +pipeline_table_stats_read(const char *pipeline_name, + uint32_t table_id, + struct rte_pipeline_table_stats *stats, + int clear); + +int +pipeline_table_rule_add(const char *pipeline_name, + uint32_t table_id, + struct table_rule_match *match, + struct table_rule_action *action, + void **data); + +int +pipeline_table_rule_add_bulk(const char *pipeline_name, + uint32_t table_id, + struct table_rule_match *match, + struct table_rule_action *action, + void **data, + uint32_t *n_rules); + +int +pipeline_table_rule_add_default(const char *pipeline_name, + uint32_t table_id, + struct table_rule_action *action, + void **data); + +int +pipeline_table_rule_delete(const char *pipeline_name, + uint32_t table_id, + struct table_rule_match *match); + +int +pipeline_table_rule_delete_default(const char *pipeline_name, + uint32_t table_id); + +int +pipeline_table_rule_stats_read(const char *pipeline_name, + uint32_t table_id, + void *data, + struct rte_table_action_stats_counters *stats, + int clear); + +int +pipeline_table_mtr_profile_add(const char *pipeline_name, + uint32_t table_id, + uint32_t meter_profile_id, + struct rte_table_action_meter_profile *profile); + +int +pipeline_table_mtr_profile_delete(const char *pipeline_name, + uint32_t table_id, + uint32_t meter_profile_id); + +int +pipeline_table_rule_mtr_read(const char *pipeline_name, + uint32_t table_id, + void *data, + uint32_t tc_mask, + struct rte_table_action_mtr_counters *stats, + int clear); + +int +pipeline_table_dscp_table_update(const char *pipeline_name, + uint32_t table_id, + uint64_t dscp_mask, + struct rte_table_action_dscp_table *dscp_table); + +int +pipeline_table_rule_ttl_read(const char *pipeline_name, + uint32_t table_id, + void *data, + struct rte_table_action_ttl_counters *stats, + int clear); + #endif /* _INCLUDE_PIPELINE_H_ */