[PATCH v8 3/6] flow_parser: add shared parser library

Stephen Hemminger stephen at networkplumber.org
Thu Jan 29 18:28:15 CET 2026


On Thu, 29 Jan 2026 12:41:59 +0100
Lukas Sismis <sismis at dyna-nic.com> wrote:

> +
> +struct rte_flow_parser_ctx {
> +	struct rte_flow_parser_vxlan_encap_conf vxlan_encap_conf;
> +	struct rte_flow_parser_nvgre_encap_conf nvgre_encap_conf;
> +	struct rte_flow_parser_l2_encap_conf l2_encap_conf;
> +	struct rte_flow_parser_l2_decap_conf l2_decap_conf;
> +	struct rte_flow_parser_mplsogre_encap_conf mplsogre_encap_conf;
> +	struct rte_flow_parser_mplsogre_decap_conf mplsogre_decap_conf;
> +	struct rte_flow_parser_mplsoudp_encap_conf mplsoudp_encap_conf;
> +	struct rte_flow_parser_mplsoudp_decap_conf mplsoudp_decap_conf;
> +	struct rte_flow_action_conntrack conntrack_context;
> +	struct raw_encap_conf raw_encap_confs[RAW_ENCAP_CONFS_MAX_NUM];
> +	struct raw_decap_conf raw_decap_confs[RAW_ENCAP_CONFS_MAX_NUM];
> +	struct ipv6_ext_push_conf ipv6_ext_push_confs[IPV6_EXT_PUSH_CONFS_MAX_NUM];
> +	struct ipv6_ext_remove_conf ipv6_ext_remove_confs[IPV6_EXT_PUSH_CONFS_MAX_NUM];
> +	struct rte_flow_action_raw_encap raw_encap_conf_cache[RAW_ENCAP_CONFS_MAX_NUM];
> +	struct rte_flow_action_raw_decap raw_decap_conf_cache[RAW_ENCAP_CONFS_MAX_NUM];
> +	struct rte_flow_action_ipv6_ext_push
> +		ipv6_ext_push_action_cache[IPV6_EXT_PUSH_CONFS_MAX_NUM];
> +	struct rte_flow_action_ipv6_ext_remove
> +		ipv6_ext_remove_action_cache[IPV6_EXT_PUSH_CONFS_MAX_NUM];
> +	struct raw_sample_conf raw_sample_confs[RAW_SAMPLE_CONFS_MAX_NUM];
> +	struct rte_flow_action_mark sample_mark[RAW_SAMPLE_CONFS_MAX_NUM];
> +	struct rte_flow_action_queue sample_queue[RAW_SAMPLE_CONFS_MAX_NUM];
> +	struct rte_flow_action_count sample_count[RAW_SAMPLE_CONFS_MAX_NUM];
> +	struct rte_flow_action_port_id sample_port_id[RAW_SAMPLE_CONFS_MAX_NUM];
> +	struct rte_flow_action_raw_encap sample_encap[RAW_SAMPLE_CONFS_MAX_NUM];
> +	struct action_vxlan_encap_data sample_vxlan_encap[RAW_SAMPLE_CONFS_MAX_NUM];
> +	struct action_nvgre_encap_data sample_nvgre_encap[RAW_SAMPLE_CONFS_MAX_NUM];
> +	struct action_rss_data sample_rss_data[RAW_SAMPLE_CONFS_MAX_NUM];
> +	struct rte_flow_action_vf sample_vf[RAW_SAMPLE_CONFS_MAX_NUM];
> +	struct rte_flow_action_ethdev sample_port_representor[RAW_SAMPLE_CONFS_MAX_NUM];
> +	struct rte_flow_action_ethdev sample_represented_port[RAW_SAMPLE_CONFS_MAX_NUM];
> +};

How big is this beast?


More information about the dev mailing list