[dpdk-dev] [dpdk-dev v4 0/3] add RSS configuration for iavf

Jeff Guo jia.guo at intel.com
Tue Apr 14 19:42:22 CEST 2020


Because the VF must be capable of configuring RSS, so add RSS configuration
for iavf, VFs could add or delete a RSS rule base on the PF's capability.
The supported protocol rss input set as below.

eth-src-only/
eth-dst-only/
svlan/
cvlan/
ipv4/
ipv6/
l3_src_only/
l3_dst_only/
l2tpv3/
esp/
ah/
pfcp/
gtpu down/
gtpu up/
udp/
tcp/
sctp/

use tespmd for example:
testpmd> flow create 0 ingress pattern eth / ipv4 / end actions rss types ipv4 l3-src-only  end key_len 0 queues end / end

use scapy for example:
> sendp(Ether(dst="00:01:23:45:67:01")/IP(src=RandIP())/Raw('x'*20),iface="ens785f1",loop=1,inter=0.3)

the expect result:
the rss hash works and the packets will go to difference queue for load balance.

This patchset depends on below patch sets.
(1)http://patches.dpdk.org/project/dpdk/list/?series=8950
        add generic filter support for iavf
(2)http://patches.dpdk.org/project/dpdk/list/?series=9280
        iavf share code update
(3)http://patches.dpdk.org/project/dpdk/list/?series=9244
        framework for advanced iAVF PMD

v4:
1.refine the rss type checking
2.delete unnecessary pdu type item.

v3:
1.refince rss offload types.
2.add doc in release note
3.refine some naming base on virtchnl definition.
4.move gtp pdu index from normal to special.

v2:
1.refine some rte eth rss offload types.
2.add NAT T ESP and refine gtpu down/up
3.reference some fixing patch from pf side.

Jeff Guo (3):
  ethdev: add new RSS offload types
  net/iavf: add RSS configuration for VFs
  app/testpmd: add new types to RSS hash commands

 app/test-pmd/cmdline.c                 |   24 +-
 app/test-pmd/config.c                  |    8 +
 doc/guides/rel_notes/release_20_05.rst |    2 +
 drivers/net/iavf/Makefile              |    1 +
 drivers/net/iavf/iavf.h                |    2 +
 drivers/net/iavf/iavf_hash.c           | 1073 ++++++++++++++++++++++++
 drivers/net/iavf/iavf_vchnl.c          |   33 +-
 drivers/net/iavf/meson.build           |    1 +
 lib/librte_ethdev/rte_ethdev.h         |   11 +-
 9 files changed, 1147 insertions(+), 8 deletions(-)
 create mode 100644 drivers/net/iavf/iavf_hash.c

-- 
2.20.1



More information about the dev mailing list