[dpdk-dev] [PATCH v3 1/3] net/ice/base: support IP fragment RSS and FDIR

Xu, Ting ting.xu at intel.com
Mon Apr 12 10:31:00 CEST 2021


Hi, Jeff,

Best Regards,
Xu Ting

> -----Original Message-----
> From: Guo, Jia <jia.guo at intel.com>
> Sent: Sunday, April 11, 2021 2:07 PM
> To: Zhang, Qi Z <qi.z.zhang at intel.com>; Yang, Qiming
> <qiming.yang at intel.com>
> Cc: dev at dpdk.org; Xu, Ting <ting.xu at intel.com>; Guo, Jia <jia.guo at intel.com>
> Subject: [PATCH v3 1/3] net/ice/base: support IP fragment RSS and FDIR
> 
> Add support for IP fragment RSS hash and FDIR according to packet ID.
> Separate IP fragment and IP other packet types.
> 
> Signed-off-by: Ting Xu <ting.xu at intel.com>
> Signed-off-by: Jeff Guo <jia.guo at intel.com>
> ---
>  drivers/net/ice/base/ice_fdir.c | 50 +++++++++++++++++++++++++++++++--
> drivers/net/ice/base/ice_fdir.h | 22 ++++++++++++---
> drivers/net/ice/base/ice_flow.c | 50 ++++++++++++++++++++++++++++++++-
> drivers/net/ice/base/ice_flow.h |  5 +++-  drivers/net/ice/base/ice_type.h |  1
> +
>  5 files changed, 120 insertions(+), 8 deletions(-)
> 
> diff --git a/drivers/net/ice/base/ice_fdir.c b/drivers/net/ice/base/ice_fdir.c
> index 2b39c13127..0eb7cdd729 100644
> --- a/drivers/net/ice/base/ice_fdir.c
> +++ b/drivers/net/ice/base/ice_fdir.c
> @@ -518,6 +518,24 @@ static const u8 ice_fdir_ipv4_udp_ecpri_tp0_pkt[] = {
>  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  };
> 
> +static const u8 ice_fdir_ipv6_frag_pkt[] = {
> +	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
> +	0x00, 0x00, 0x00, 0x00, 0x86, 0xDD, 0x60, 0x00,
> +	0x00, 0x00, 0x00, 0x00, 0x2C, 0x40, 0x00, 0x00,
> +	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
> +	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
> +	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
> +	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3B, 0x00,
> +	0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
> +};
> +
> +static const u8 ice_fdir_ipv4_frag_pkt[] = {
> +	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
> +	0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x45, 0x00,
> +	0x00, 0x14, 0x00, 0x00, 0x20, 0x00, 0x40, 0x10,
> +	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
> +	0x00, 0x00
> +};
>  static const u8 ice_fdir_tcpv6_pkt[] = {
>  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
>  	0x00, 0x00, 0x00, 0x00, 0x86, 0xDD, 0x60, 0x00, @@ -716,6 +734,16
> @@ static const struct ice_fdir_base_pkt ice_fdir_pkt[] = {
>  		sizeof(ice_fdir_ipv4_pkt), ice_fdir_ipv4_pkt,
>  		sizeof(ice_fdir_ip4_tun_pkt), ice_fdir_ip4_tun_pkt,
>  	},
> +	{
> +		ICE_FLTR_PTYPE_FRAG_IPV4,
> +		sizeof(ice_fdir_ipv4_pkt), ice_fdir_ipv4_frag_pkt,
> +		sizeof(ice_fdir_ipv4_pkt), ice_fdir_ipv4_frag_pkt,
> +	},

Should be the same, "ice_fdir_ipv4_frag_pkt"

> +	{
> +		ICE_FLTR_PTYPE_FRAG_IPV6,
> +		sizeof(ice_fdir_ipv6_frag_pkt), ice_fdir_ipv6_frag_pkt,
> +		sizeof(ice_fdir_ipv6_frag_pkt), ice_fdir_ipv6_frag_pkt,
> +	},
>  	{
>  		ICE_FLTR_PTYPE_NONF_IPV4_GTPU,
>  		sizeof(ice_fdir_ipv4_gtpu4_pkt),

Skip...

> diff --git a/drivers/net/ice/base/ice_type.h b/drivers/net/ice/base/ice_type.h
> index a6599363f9..5abe9dc9ea 100644
> --- a/drivers/net/ice/base/ice_type.h
> +++ b/drivers/net/ice/base/ice_type.h
> @@ -349,6 +349,7 @@ enum ice_fltr_ptype {
>  	ICE_FLTR_PTYPE_NONF_ECPRI_TP0,
>  	ICE_FLTR_PTYPE_NONF_IPV4_UDP_ECPRI_TP0,
>  	ICE_FLTR_PTYPE_FRAG_IPV4,
> +	ICE_FLTR_PTYPE_FRAG_IPV6,
>  	ICE_FLTR_PTYPE_NONF_IPV6_UDP,
>  	ICE_FLTR_PTYPE_NONF_IPV6_TCP,
>  	ICE_FLTR_PTYPE_NONF_IPV6_SCTP,
> --
> 2.20.1



More information about the dev mailing list