> -----Original Message-----
> From: dev <dev-boun...@dpdk.org> On Behalf Of Dekel Peled
> Sent: Wednesday, March 25, 2020 10:13 AM
> To: Ori Kam <or...@mellanox.com>; wenzhuo...@intel.com;
> jingjing...@intel.com; bernard.iremon...@intel.com
> Cc: Matan Azrad <ma...@mellanox.com>; dev@dpdk.org
> Subject: [dpdk-dev] [PATCH v2] 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 and raw_decap setting.
>
> Signed-off-by: Dekel Peled <dek...@mellanox.com>
> ---
> v2: remove redundant hton flag.
> ---
> app/test-pmd/cmdline_flow.c | 15 +++++++++++++--
> 1 file changed, 13 insertions(+), 2 deletions(-)
>
> diff --git a/app/test-pmd/cmdline_flow.c b/app/test-pmd/cmdline_flow.c
> index a781545..4877ac6 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,12 +2349,18 @@ 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(struct rte_flow_item_gtp,
> + v_pt_rsv_flags)),
> + },
> [ITEM_GTP_MSG_TYPE] = {
> .name = "msg_type",
> .help = "GTP message type",
> .next = NEXT(item_gtp, NEXT_ENTRY(UNSIGNED),
> item_param),
> - .args = ARGS(ARGS_ENTRY_HTON(struct rte_flow_item_gtp,
> - msg_type)),
> + .args = ARGS(ARGS_ENTRY(struct rte_flow_item_gtp,
> msg_type)),
> },
> [ITEM_GTP_TEID] = {
> .name = "teid",
> @@ -6604,6 +6612,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
Acked-by: Ori Kam <or...@mellanox.com>
Thanks,
Ori