[dpdk-dev] [dpdk-dev v5 1/3] ethdev: add new RSS offload types

Ferruh Yigit ferruh.yigit at intel.com
Thu Apr 16 00:13:02 CEST 2020


On 4/15/2020 4:38 PM, Iremonger, Bernard wrote:
> Hi  Jeff,
> 
> 
>> -----Original Message-----
>> From: Guo, Jia <jia.guo at intel.com>
>> Sent: Wednesday, April 15, 2020 6:11 PM
>> To: Iremonger, Bernard <bernard.iremonger at intel.com>;
>> orika at mellanox.com; Ye, Xiaolong <xiaolong.ye at intel.com>; Zhang, Qi Z
>> <qi.z.zhang at intel.com>
>> Cc: dev at dpdk.org; Wu, Jingjing <jingjing.wu at intel.com>; Cao, Yahui
>> <yahui.cao at intel.com>; Su, Simei <simei.su at intel.com>; Guo, Jia
>> <jia.guo at intel.com>
>> Subject: [dpdk-dev v5 1/3] ethdev: add new RSS offload types
>>
>> Defines some new RSS offload types for ETH/S_VLAN/C_VLAN/L2TPV3/
>> ESP/AH/PFCP/L2_SRC_ONLY/L2_DST_ONLY.
>>
>> Signed-off-by: Jeff Guo <jia.guo at intel.com>
>> Reviewed-by: Qi Zhang <qi.z.zhang at intel.com>
>> ---
>> v5->v4:
>> rename ETH_RSS_ETH_XXX to ETH_RSS_L2_XXX.
>> ---
>>  lib/librte_ethdev/rte_ethdev.h | 11 ++++++++++-
>>  1 file changed, 10 insertions(+), 1 deletion(-)
>>
>> diff --git a/lib/librte_ethdev/rte_ethdev.h b/lib/librte_ethdev/rte_ethdev.h
>> index d1a593ad1..138c15a16 100644
>> --- a/lib/librte_ethdev/rte_ethdev.h
>> +++ b/lib/librte_ethdev/rte_ethdev.h
>> @@ -511,6 +511,13 @@ struct rte_eth_rss_conf {
>>  #define ETH_RSS_GENEVE             (1ULL << 20)
>>  #define ETH_RSS_NVGRE              (1ULL << 21)
>>  #define ETH_RSS_GTPU               (1ULL << 23)
>> +#define ETH_RSS_ETH		   (1ULL << 24)
>> +#define ETH_RSS_S_VLAN		   (1ULL << 25)
>> +#define ETH_RSS_C_VLAN		   (1ULL << 26)
>> +#define ETH_RSS_ESP		   (1ULL << 27)
>> +#define ETH_RSS_AH		   (1ULL << 28)
> 
> I have a patch in flight to  add ETH_RSS_ESP and ETH_RSS_AH.
> I have used the same values as you have used.
> http://patches.dpdk.org/patch/68550/

Both patch sets touch similar area, both in ethdev and testpmd, and both sets
has external dependencies, so not easy to manage.
But since the changes are trivial, I hope it can be resolved while merging, if
not one may be required to be rebased, based on merge order.
btw, using same values is good idea, it helps to resolve conflict.

> 
>> +#define ETH_RSS_L2TPV3		   (1ULL << 29)
>> +#define ETH_RSS_PFCP		   (1ULL << 30)
>>
>>  /*
>>   * We use the following macros to combine with above ETH_RSS_* for @@ -
>> 524,7 +531,9 @@ struct rte_eth_rss_conf {
>>  #define ETH_RSS_L3_SRC_ONLY        (1ULL << 63)
>>  #define ETH_RSS_L3_DST_ONLY        (1ULL << 62)
>>  #define ETH_RSS_L4_SRC_ONLY        (1ULL << 61)
>> -#define ETH_RSS_L4_DST_ONLY        (1ULL << 60)
>> +#define ETH_RSS_L4_DST_ONLY	   (1ULL << 60)
>> +#define ETH_RSS_L2_SRC_ONLY	   (1ULL << 59)
>> +#define ETH_RSS_L2_DST_ONLY	   (1ULL << 58)
>>
>>  /**
>>   * For input set change of hash filter, if SRC_ONLY and DST_ONLY of
>> --
>> 2.20.1
> 
> Regards,
> 
> Bernard.
> 



More information about the dev mailing list