From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id ED1D9A0577; Tue, 14 Apr 2020 10:46:18 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id C9BF61C23F; Tue, 14 Apr 2020 10:46:18 +0200 (CEST) Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by dpdk.org (Postfix) with ESMTP id 259951C235 for ; Tue, 14 Apr 2020 10:46:16 +0200 (CEST) IronPort-SDR: tfvwGb8mlPtUUuKvsjSnPrD0Qqb2UofLqmd3/D8CWuzw1wmaAshRBlRl+KSKt9uqPdW5JebJ0S 6ffUcvJKX7aA== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Apr 2020 01:46:16 -0700 IronPort-SDR: YgtntijhyLxvmOy0CGF1muBUuGTPCFahhEb2BpoMhgVtDEzXm7lO/Ho332Bip8ORVQvSFZ2Jeb n3DZJPRQs4Cw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.72,382,1580803200"; d="scan'208";a="270002328" Received: from npg-dpdk-cvl-jeffguo-01.sh.intel.com ([10.67.111.128]) by orsmga008.jf.intel.com with ESMTP; 14 Apr 2020 01:46:13 -0700 From: Jeff Guo To: orika@mellanox.com, bernard.iremonger@intel.com, xiaolong.ye@intel.com, qi.z.zhang@intel.com Cc: dev@dpdk.org, jingjing.wu@intel.com, yahui.cao@intel.com, simei.su@intel.com, jia.guo@intel.com Date: Tue, 14 Apr 2020 13:42:22 -0400 Message-Id: <20200414174225.64120-1-jia.guo@intel.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20200318170401.7938-5-jia.guo@intel.com> References: <20200318170401.7938-5-jia.guo@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] [dpdk-dev v4 0/3] add RSS configuration for iavf X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 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