[dpdk-stable] [PATCH] net/i40e: fix register setting for hash enable

Yu, DapengX dapengx.yu at intel.com
Wed Jan 27 03:16:30 CET 2021


Hi Beilei,

The pctype translation is introduced by i40e RSS refactor commit: ef4c16fd9148 by mistake, its behavior is inconsistent with the implementation before the refactor. 

This inconsistency can be gotten from the comparison of the running of the code.

I have also confirmed with the author of commit: ef4c16fd9148 that the adding of the translation is a mistake. 

So actually even if without x722 datasheet, we can know the translation is unnecessary.

I cannot find x722 datasheet from Intel website. It will be great if you can share one. Thanks!

-----Original Message-----
From: Xing, Beilei 
Sent: Wednesday, January 27, 2021 9:44 AM
To: Yu, DapengX <dapengx.yu at intel.com>; Guo, Jia <jia.guo at intel.com>
Cc: dev at dpdk.org; Yu, DapengX <dapengx.yu at intel.com>; stable at dpdk.org
Subject: RE: [PATCH] net/i40e: fix register setting for hash enable



> -----Original Message-----
> From: dapengx.yu at intel.com <dapengx.yu at intel.com>
> Sent: Tuesday, January 26, 2021 5:52 PM
> To: Xing, Beilei <beilei.xing at intel.com>; Guo, Jia <jia.guo at intel.com>
> Cc: dev at dpdk.org; Yu, DapengX <dapengx.yu at intel.com>; stable at dpdk.org
> Subject: [PATCH] net/i40e: fix register setting for hash enable
> 
> From: Dapeng Yu <dapengx.yu at intel.com>
> 
> The original code causes wrong value to be set into PFQF_HENA register 
> because unnecessary calling to get translated pctype value for X722 
> NIC. The result is RSS cannot work.
> 
> So remove the unnecessary translation.
> 
> Fixes: ef4c16fd9148 ("net/i40e: refactor RSS flow")
> Cc: stable at dpdk.org
> 
> Signed-off-by: Dapeng Yu <dapengx.yu at intel.com>
> ---
>  drivers/net/i40e/i40e_hash.c | 4 ----
>  1 file changed, 4 deletions(-)
> 
> diff --git a/drivers/net/i40e/i40e_hash.c 
> b/drivers/net/i40e/i40e_hash.c index
> 9271797a7..b1cb24f43 100644
> --- a/drivers/net/i40e/i40e_hash.c
> +++ b/drivers/net/i40e/i40e_hash.c
> @@ -678,10 +678,6 @@ i40e_hash_enable_pctype(struct i40e_hw *hw,  {  
> uint32_t reg, reg_val, mask;
> 
> -/* For X722, get translated pctype in fd pctype register */ -if 
> (hw->mac.type == I40E_MAC_X722) -pctype = i40e_read_rx_ctl(hw, 
> I40E_GLQF_FD_PCTYPES(pctype));
> -

Did you check the latest X722 datasheet to confirm the behavior?

>  if (pctype < 32) {
>  mask = BIT(pctype);
>  reg = I40E_PFQF_HENA(0);
> --
> 2.27.0




More information about the stable mailing list