Hi,

> -----Original Message-----
> From: Wu, WenxuanX <wenxuanx...@intel.com>
> Sent: Wednesday, July 6, 2022 10:56
> To: qiz.zh...@intel.com; Xing, Beilei <beilei.x...@intel.com>; dev@dpdk.org
> Cc: Yang, Qiming <qiming.y...@intel.com>; Zhou, YidingX
> <yidingx.z...@intel.com>; Wu, WenxuanX <wenxuanx...@intel.com>; Su,
> Simei <simei...@intel.com>; sta...@dpdk.com
> Subject: [PATCH v2] net/iavf: fix gtpu extension flow error
> 
> From: Wenxuan Wu <wenxuanx...@intel.com>
> 
> Due to the change of struct rte_gtp_psc_generic_hdr, kernel driver can not
> handle gtp_psc properly, we introduce a new structure to fix this gap between
> kernel driver and struct rte_gtp_psc_generic_hdr.
> 
> Fixes: d5eb3e600d9e ("net/iavf: support flow director basic rule")
> Cc: simei...@intel.com

This line should be delete before patch sent.

> Cc: sta...@dpdk.com
> 
> Signed-off-by: Wenxuan Wu <wenxuanx...@intel.com>
> 
> ---
> v2: refine commit log and doc.
> ---
>  drivers/net/iavf/iavf_fdir.c | 18 ++++++++++++++++--
>  1 file changed, 16 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/net/iavf/iavf_fdir.c b/drivers/net/iavf/iavf_fdir.c index
> f236260502..4789d46ab2 100644
> --- a/drivers/net/iavf/iavf_fdir.c
> +++ b/drivers/net/iavf/iavf_fdir.c
> @@ -1300,8 +1300,22 @@ iavf_fdir_parse_pattern(__rte_unused struct
> iavf_adapter *ad,
> 
>        GTPU_DWN, QFI);
>                               }
> 
> -                             rte_memcpy(hdr->buffer, gtp_psc_spec,
> -                                     sizeof(*gtp_psc_spec));
> +                             /*
> +                              * New structure to fix gap between kernel
> driver and
> +                              * rte_gtp_psc_generic_hdr.
> +                              */
> +                             struct iavf_gtp_psc_spec_hdr {
> +                                     uint8_t len;
> +                                     uint8_t qfi:6;
> +                                     uint8_t type:4;
> +                                     uint8_t next;
> +                             } psc;
> +                             psc.len = gtp_psc_spec->hdr.ext_hdr_len;
> +                             psc.qfi = gtp_psc_spec->hdr.qfi;
> +                             psc.type = gtp_psc_spec->hdr.type;
> +                             psc.next = 0;
> +                             rte_memcpy(hdr->buffer, &psc,
> +                                     sizeof(struct iavf_gtp_psc_spec_hdr));
>                       }
> 
>                       hdrs->count = ++layer;
> --
> 2.25.1

Acked-by: Qiming Yang  <qiming.y...@intel.com>

Reply via email to