[dpdk-dev] [PATCH] app/testpmd: enhance GTP support

Ori Kam orika at mellanox.com
Tue Mar 24 10:58:48 CET 2020


Hi Dekel,

> -----Original Message-----
> Subject: [dpdk-dev] [PATCH] app/testpmd: enhance GTP support
> 
> This patch adds CLI option to enter the v_pt_rsv_flags value for GTP
> flow pattern item.
> It also adds GTP as valid item in raw_encap nad raw_decap setting.
> 
> Signed-off-by: Dekel Peled <dekelp at mellanox.com>
> ---
>  app/test-pmd/cmdline_flow.c | 12 ++++++++++++
>  1 file changed, 12 insertions(+)
> 
> diff --git a/app/test-pmd/cmdline_flow.c b/app/test-pmd/cmdline_flow.c
> index a781545..cc1bd19 100644
> --- a/app/test-pmd/cmdline_flow.c
> +++ b/app/test-pmd/cmdline_flow.c
> @@ -170,6 +170,7 @@ enum index {
>  	ITEM_FUZZY,
>  	ITEM_FUZZY_THRESH,
>  	ITEM_GTP,
> +	ITEM_GTP_FLAGS,
>  	ITEM_GTP_MSG_TYPE,
>  	ITEM_GTP_TEID,
>  	ITEM_GTPC,
> @@ -938,6 +939,7 @@ struct parse_action_priv {
>  };
> 
>  static const enum index item_gtp[] = {
> +	ITEM_GTP_FLAGS,
>  	ITEM_GTP_MSG_TYPE,
>  	ITEM_GTP_TEID,
>  	ITEM_NEXT,
> @@ -2347,6 +2349,13 @@ static int comp_set_raw_index(struct context *,
> const struct token *,
>  		.next = NEXT(item_gtp),
>  		.call = parse_vc,
>  	},
> +	[ITEM_GTP_FLAGS] = {
> +		.name = "v_pt_rsv_flags",
> +		.help = "GTP flags",
> +		.next = NEXT(item_gtp, NEXT_ENTRY(UNSIGNED),
> item_param),
> +		.args = ARGS(ARGS_ENTRY_HTON(struct rte_flow_item_gtp,
> +					     v_pt_rsv_flags)),

V_pt_rsv_flags is 8 bits right? So why HTON?

> +	},
>  	[ITEM_GTP_MSG_TYPE] = {
>  		.name = "msg_type",
>  		.help = "GTP message type",
> @@ -6604,6 +6613,9 @@ static int comp_set_raw_index(struct context *,
> const struct token *,
>  			size = sizeof(struct rte_flow_item_ah);
>  			proto = 0x33;
>  			break;
> +		case RTE_FLOW_ITEM_TYPE_GTP:
> +			size = sizeof(struct rte_flow_item_gtp);
> +			break;
>  		case RTE_FLOW_ITEM_TYPE_PFCP:
>  			size = sizeof(struct rte_flow_item_pfcp);
>  			break;
> --
> 1.8.3.1

Best,
Ori


More information about the dev mailing list