net/i40evf: fix packet loss issue for X722

Message ID 20210224020900.93574-1-beilei.xing@intel.com (mailing list archive)
State Accepted, archived
Delegated to: Qi Zhang
Headers
Series net/i40evf: fix packet loss issue for X722 |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK
ci/intel-Testing success Testing PASS
ci/iol-intel-Functional success Functional Testing PASS
ci/iol-intel-Performance success Performance Testing PASS
ci/iol-mellanox-Performance success Performance Testing PASS
ci/iol-mellanox-Functional success Functional Testing PASS
ci/iol-testing success Testing PASS

Commit Message

Xing, Beilei Feb. 24, 2021, 2:09 a.m. UTC
  From: Beilei Xing <beilei.xing@intel.com>

When Tx queue number is more than Rx queue number, and RSS is
enabled, there'll be packet loss with X722.
The root cause is the lookup table is not configured correctly,
since it uses VF's queue pair number but not Rx queue number.

Fixes: 2da3ba746795 ("net/i40e: fix VF runtime queues RSS config")
Cc: stable@dpdk.org

Signed-off-by: Beilei Xing <beilei.xing@intel.com>
Signed-off-by: Hengjian Zhang <hengjianx.zhang@intel.com>
---
 drivers/net/i40e/i40e_ethdev_vf.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
  

Comments

Guo, Jia Feb. 24, 2021, 2:34 a.m. UTC | #1
Acked-by: Jeff Guo <jia.guo@intel.com>

> -----Original Message-----
> From: Xing, Beilei <beilei.xing@intel.com>
> Sent: Wednesday, February 24, 2021 10:09 AM
> To: Guo, Jia <jia.guo@intel.com>
> Cc: dev@dpdk.org; Xing, Beilei <beilei.xing@intel.com>; stable@dpdk.org;
> Zhang, HengjianX <hengjianx.zhang@intel.com>
> Subject: [PATCH] net/i40evf: fix packet loss issue for X722
> 
> From: Beilei Xing <beilei.xing@intel.com>
> 
> When Tx queue number is more than Rx queue number, and RSS is enabled,
> there'll be packet loss with X722.
> The root cause is the lookup table is not configured correctly, since it uses
> VF's queue pair number but not Rx queue number.
> 
> Fixes: 2da3ba746795 ("net/i40e: fix VF runtime queues RSS config")
> Cc: stable@dpdk.org
> 
> Signed-off-by: Beilei Xing <beilei.xing@intel.com>
> Signed-off-by: Hengjian Zhang <hengjianx.zhang@intel.com>
> ---
>  drivers/net/i40e/i40e_ethdev_vf.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/net/i40e/i40e_ethdev_vf.c
> b/drivers/net/i40e/i40e_ethdev_vf.c
> index 2909b4d894..0c9bd8d2c6 100644
> --- a/drivers/net/i40e/i40e_ethdev_vf.c
> +++ b/drivers/net/i40e/i40e_ethdev_vf.c
> @@ -2746,7 +2746,7 @@ i40evf_config_rss(struct i40e_vf *vf)
>  		}
> 
>  		for (i = 0; i < rss_lut_size; i++)
> -			lut_info[i] = i % vf->num_queue_pairs;
> +			lut_info[i] = i % num;
> 
>  		ret = i40evf_set_rss_lut(&vf->vsi, lut_info,
>  					 rss_lut_size);
> --
> 2.26.2
  
Qi Zhang March 5, 2021, 8:49 a.m. UTC | #2
> -----Original Message-----
> From: dev <dev-bounces@dpdk.org> On Behalf Of Guo, Jia
> Sent: Wednesday, February 24, 2021 10:35 AM
> To: Xing, Beilei <beilei.xing@intel.com>
> Cc: dev@dpdk.org; stable@dpdk.org; Zhang, HengjianX
> <hengjianx.zhang@intel.com>
> Subject: Re: [dpdk-dev] [PATCH] net/i40evf: fix packet loss issue for X722
> 
> Acked-by: Jeff Guo <jia.guo@intel.com>
> 
> > -----Original Message-----
> > From: Xing, Beilei <beilei.xing@intel.com>
> > Sent: Wednesday, February 24, 2021 10:09 AM
> > To: Guo, Jia <jia.guo@intel.com>
> > Cc: dev@dpdk.org; Xing, Beilei <beilei.xing@intel.com>;
> > stable@dpdk.org; Zhang, HengjianX <hengjianx.zhang@intel.com>
> > Subject: [PATCH] net/i40evf: fix packet loss issue for X722
> >
> > From: Beilei Xing <beilei.xing@intel.com>
> >
> > When Tx queue number is more than Rx queue number, and RSS is enabled,
> > there'll be packet loss with X722.
> > The root cause is the lookup table is not configured correctly, since
> > it uses VF's queue pair number but not Rx queue number.
> >
> > Fixes: 2da3ba746795 ("net/i40e: fix VF runtime queues RSS config")
> > Cc: stable@dpdk.org
> >
> > Signed-off-by: Beilei Xing <beilei.xing@intel.com>
> > Signed-off-by: Hengjian Zhang <hengjianx.zhang@intel.com>
> > ---

Applied to dpdk-next-net-intel.

Thanks
Qi
  

Patch

diff --git a/drivers/net/i40e/i40e_ethdev_vf.c b/drivers/net/i40e/i40e_ethdev_vf.c
index 2909b4d894..0c9bd8d2c6 100644
--- a/drivers/net/i40e/i40e_ethdev_vf.c
+++ b/drivers/net/i40e/i40e_ethdev_vf.c
@@ -2746,7 +2746,7 @@  i40evf_config_rss(struct i40e_vf *vf)
 		}
 
 		for (i = 0; i < rss_lut_size; i++)
-			lut_info[i] = i % vf->num_queue_pairs;
+			lut_info[i] = i % num;
 
 		ret = i40evf_set_rss_lut(&vf->vsi, lut_info,
 					 rss_lut_size);