[dpdk-dev] [PATCH v3] net/ixgbe: disable NFS filtering

Guo, Jia jia.guo at intel.com
Tue Jan 26 04:36:29 CET 2021


Acked-by: Jeff Guo <jia.guo at intel.com>

> -----Original Message-----
> From: dapengx.yu at intel.com <dapengx.yu at intel.com>
> Sent: Tuesday, January 26, 2021 11:03 AM
> To: Guo, Jia <jia.guo at intel.com>; Wang, Haiyue <haiyue.wang at intel.com>;
> Yang, Qiming <qiming.yang at intel.com>
> Cc: dev at dpdk.org; Yu, DapengX <dapengx.yu at intel.com>; stable at dpdk.org
> Subject: [PATCH v3] net/ixgbe: disable NFS filtering
> 
> From: Dapeng Yu <dapengx.yu at intel.com>
> 
> Disable NFS header filtering whether NFS packets coalescing are required or
> not, in order to make RSS can work on NFS packets.
> 
> The code without the patch does follow datasheet, but not consistent with
> the ixgbe kernel driver. It causes NFS packets to be filtered and make them
> flow into queue 0, before RSS can work on them.
> 
> Fixes: b826efba6de4 ("net/ixgbe: align register setting when RSC is disabled")
> Fixes: 8eecb3295aed ("ixgbe: add LRO support")
> Cc: stable at dpdk.org
> 
> Signed-off-by: Dapeng Yu <dapengx.yu at intel.com>
> ---
>  drivers/net/ixgbe/ixgbe_rxtx.c | 10 +++-------
>  1 file changed, 3 insertions(+), 7 deletions(-)
> 
> diff --git a/drivers/net/ixgbe/ixgbe_rxtx.c b/drivers/net/ixgbe/ixgbe_rxtx.c
> index cc8f70e6d..2efd054f7 100644
> --- a/drivers/net/ixgbe/ixgbe_rxtx.c
> +++ b/drivers/net/ixgbe/ixgbe_rxtx.c
> @@ -4923,15 +4923,11 @@ ixgbe_set_rsc(struct rte_eth_dev *dev)
>  	/* RFCTL configuration  */
>  	rfctl = IXGBE_READ_REG(hw, IXGBE_RFCTL);
>  	if ((rsc_capable) && (rx_conf->offloads &
> DEV_RX_OFFLOAD_TCP_LRO))
> -		/*
> -		 * Since NFS packets coalescing is not supported - clear
> -		 * RFCTL.NFSW_DIS and RFCTL.NFSR_DIS when RSC is
> -		 * enabled.
> -		 */
> -		rfctl &= ~(IXGBE_RFCTL_RSC_DIS | IXGBE_RFCTL_NFSW_DIS
> |
> -			   IXGBE_RFCTL_NFSR_DIS);
> +		rfctl &= ~IXGBE_RFCTL_RSC_DIS;
>  	else
>  		rfctl |= IXGBE_RFCTL_RSC_DIS;
> +	/* disable NFS filtering */
> +	rfctl |= IXGBE_RFCTL_NFSW_DIS | IXGBE_RFCTL_NFSR_DIS;
>  	IXGBE_WRITE_REG(hw, IXGBE_RFCTL, rfctl);
> 
>  	/* If LRO hasn't been requested - we are done here. */
> --
> 2.27.0



More information about the dev mailing list