[dpdk-dev] [RFC] net/i40e: refactor of hash flow

Zhang, AlvinX alvinx.zhang at intel.com
Mon Oct 26 03:05:06 CET 2020


Thanks Shougang,

Yes, I will update them.
BR,
Alvin

> -----Original Message-----
> From: Wang, ShougangX <shougangx.wang at intel.com>
> Sent: Friday, October 23, 2020 4:43 PM
> To: Zhang, AlvinX <alvinx.zhang at intel.com>; dev at dpdk.org
> Subject: RE: [dpdk-dev] [RFC] net/i40e: refactor of hash flow
> 
> Hi, Alvin
> 
> > -----Original Message-----
> > From: dev <dev-bounces at dpdk.org> On Behalf Of Zhang,Alvin
> > Sent: Friday, October 23, 2020 2:56 PM
> > To: dev at dpdk.org
> > Cc: Zhang, AlvinX <alvinx.zhang at intel.com>
> > Subject: [dpdk-dev] [RFC] net/i40e: refactor of hash flow
> >
> > From: Alvin Zhang <alvinx.zhang at intel.com>
> >
> > 1. Delete original code.
> > 2. Add 2 tables(pattern RSS type matched PCTYPE, RSS type to input set).
> > 3. Parse RSS pattern and RSS type to get PCTYPE.
> > 4. Parse RSS action to get queues, RSS function and hash field.
> > 5. Create and destroy RSS filters.
> > 6. Create new files for hash flows.
> > 7. Update doc.
> >
> > Signed-off-by: Alvin Zhang <alvinx.zhang at intel.com>
> > ---
> >  doc/guides/nics/i40e.rst       |    4 +-
> >  drivers/net/i40e/i40e_ethdev.c |  840 ++++++-------------------
> >  drivers/net/i40e/i40e_ethdev.h |   43 +-
> >  drivers/net/i40e/i40e_flow.c   |  617 +------------------
> >  drivers/net/i40e/i40e_hash.c   | 1315
> > ++++++++++++++++++++++++++++++++++++++++
> >  drivers/net/i40e/i40e_hash.h   |   34 ++
> >  drivers/net/i40e/meson.build   |    1 +
> >  7 files changed, 1587 insertions(+), 1267 deletions(-)  create mode
> > 100644 drivers/net/i40e/i40e_hash.c  create mode 100644
> > drivers/net/i40e/i40e_hash.h
> >
> <snip>
> > diff --git a/drivers/net/i40e/i40e_hash.c
> > b/drivers/net/i40e/i40e_hash.c
> <snip>
> > +#define I40E_HASH_VLAN_RSS_MASK		(ETH_RSS_S_VLAN |
> > ETH_RSS_C_VLAN)
> > +#define I40E_HASH_L2_RSS_MASK		(ETH_RSS_ETH |
> > ETH_RSS_L2_SRC_ONLY | \
> > +					ETH_RSS_L2_SRC_ONLY)
> 
> This should be ETH_RSS_L2_DST_ONLY, right?
> > +
> > +#define I40E_HASH_L23_RSS_MASK		(I40E_HASH_L2_RSS_MASK |
> > \
> > +					I40E_HASH_VLAN_RSS_MASK | \
> > +					ETH_RSS_L3_SRC_ONLY | \
> > +					ETH_RSS_L3_SRC_ONLY)
> 
> ETH_RSS_L3_DST_ONLY ?
> 
> > +
> > +#define I40E_HASH_L234_RSS_MASK		(I40E_HASH_L23_RSS_MASK
> > | \
> > +					ETH_RSS_PORT |
> > ETH_RSS_L3_SRC_ONLY | \
> > +					ETH_RSS_L3_SRC_ONLY)
> 
> ETH_RSS_L3_DST_ONLY ?
> 
> Thanks
> Shougang


More information about the dev mailing list