From patchwork Tue Apr 28 07:39:17 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Zhao1, Wei" X-Patchwork-Id: 69428 X-Patchwork-Delegate: xiaolong.ye@intel.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 34E50A034F; Tue, 28 Apr 2020 10:02:20 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id E7A121D56E; Tue, 28 Apr 2020 10:02:19 +0200 (CEST) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by dpdk.org (Postfix) with ESMTP id 516E01D56A; Tue, 28 Apr 2020 10:02:17 +0200 (CEST) IronPort-SDR: 57YWycozVuj5kwoq3w4m55yatqMBmNTwBxG76lAOQPXpztHw6mNlx8ILo+2YF8/snNCHmf7jJY 8ZQWMR4jFiAw== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 28 Apr 2020 01:02:01 -0700 IronPort-SDR: /6mabiH36fssmMYLMxF6uDQCuu4oKfeHS+pRW6rWt18J9KkSth/gEQrgsoaGiU6JiIgUCjlx2A FnEaO6NLX50w== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.73,327,1583222400"; d="scan'208";a="249107150" Received: from unknown (HELO localhost.localdomain.bj.intel.com) ([172.16.182.123]) by fmsmga008.fm.intel.com with ESMTP; 28 Apr 2020 01:01:59 -0700 From: Wei Zhao To: dev@dpdk.org Cc: stable@dpdk.org, beilei.xing@intel.com, maxime.leroy@6wind.com, Wei Zhao Date: Tue, 28 Apr 2020 15:39:17 +0800 Message-Id: <20200428073919.5583-2-wei.zhao1@intel.com> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20200428073919.5583-1-wei.zhao1@intel.com> References: <20200428054815.3551-1-wei.zhao1@intel.com> <20200428073919.5583-1-wei.zhao1@intel.com> MIME-Version: 1.0 Subject: [dpdk-dev] [PATCH v3 1/3] net/i40e: fix FDIR issue for ARP packets 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" Currently, flow "pattern eth type is 0x0806 / end actions mark id 0x86 / rss / end" can't be created successfully. FDIR parser shouldn't deny RTE_ETHER_TYPE_ARP since ARP packets will be parsed as PCTYPE_L2_PAYLOAD. This patch fixes the issue. Bugzilla ID: 402 Fixes: 42044b69c67d ("net/i40e: support input set selection for FDIR") Cc: stable@dpdk.org Signed-off-by: Wei Zhao --- drivers/net/i40e/i40e_flow.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i40e_flow.c index 7e64ae53a..1533d5abb 100644 --- a/drivers/net/i40e/i40e_flow.c +++ b/drivers/net/i40e/i40e_flow.c @@ -2666,7 +2666,6 @@ i40e_flow_parse_fdir_pattern(struct rte_eth_dev *dev, if (next_type == RTE_FLOW_ITEM_TYPE_VLAN || ether_type == RTE_ETHER_TYPE_IPV4 || ether_type == RTE_ETHER_TYPE_IPV6 || - ether_type == RTE_ETHER_TYPE_ARP || ether_type == outer_tpid) { rte_flow_error_set(error, EINVAL, RTE_FLOW_ERROR_TYPE_ITEM, @@ -2711,7 +2710,6 @@ i40e_flow_parse_fdir_pattern(struct rte_eth_dev *dev, if (ether_type == RTE_ETHER_TYPE_IPV4 || ether_type == RTE_ETHER_TYPE_IPV6 || - ether_type == RTE_ETHER_TYPE_ARP || ether_type == outer_tpid) { rte_flow_error_set(error, EINVAL, RTE_FLOW_ERROR_TYPE_ITEM, From patchwork Tue Apr 28 07:39:18 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Zhao1, Wei" X-Patchwork-Id: 69429 X-Patchwork-Delegate: xiaolong.ye@intel.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 090F8A034F; Tue, 28 Apr 2020 10:02:32 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id CC2B41D582; Tue, 28 Apr 2020 10:02:22 +0200 (CEST) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by dpdk.org (Postfix) with ESMTP id 2802C1D56A; Tue, 28 Apr 2020 10:02:18 +0200 (CEST) IronPort-SDR: i27J1KP8nQAr1kp5z/CwSbLR4nGnI4KBa3uvSrh+qoe6o7fzCZPaI9ROzwAniGst3cEaooaC6I ayJarkyI5elg== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 28 Apr 2020 01:02:02 -0700 IronPort-SDR: sTvqZT7wNnpCLJ1M5tzbzsPzplR5li773IB+RXuP2JVbk88FMjym2rt42gIaTCP+teP20E4ahM yT6heeZahUwQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.73,327,1583222400"; d="scan'208";a="249107159" Received: from unknown (HELO localhost.localdomain.bj.intel.com) ([172.16.182.123]) by fmsmga008.fm.intel.com with ESMTP; 28 Apr 2020 01:02:01 -0700 From: Wei Zhao To: dev@dpdk.org Cc: stable@dpdk.org, beilei.xing@intel.com, maxime.leroy@6wind.com, Wei Zhao Date: Tue, 28 Apr 2020 15:39:18 +0800 Message-Id: <20200428073919.5583-3-wei.zhao1@intel.com> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20200428073919.5583-1-wei.zhao1@intel.com> References: <20200428054815.3551-1-wei.zhao1@intel.com> <20200428073919.5583-1-wei.zhao1@intel.com> MIME-Version: 1.0 Subject: [dpdk-dev] [PATCH v3 2/3] doc: input set requirement of each pctype for FDIR 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" Add input set requirement info to i40e doc. Bugzilla ID: 403 Signed-off-by: Wei Zhao --- doc/guides/nics/i40e.rst | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/doc/guides/nics/i40e.rst b/doc/guides/nics/i40e.rst index 416b3904e..ad5f51c38 100644 --- a/doc/guides/nics/i40e.rst +++ b/doc/guides/nics/i40e.rst @@ -747,6 +747,13 @@ Use 16 Bytes RX Descriptor Size As i40e PMD supports both 16 and 32 bytes RX descriptor sizes, and 16 bytes size can provide helps to high performance of small packets. Configuration of ``CONFIG_RTE_LIBRTE_I40E_16BYTE_RX_DESC`` in config files can be changed to use 16 bytes size RX descriptors. +input set requirement of each pctype for FDIR +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Each pctype packet can only have one specific input set for FDIR, for example if you download 2 rte_flow rules of different input set for one specific pctype, +it is will fail and return the info "Conflict with the first rule's input set", that means the first type of input set conflict with the current one, +this limitaition is required by hardware. + Example of getting best performance with l3fwd example ------------------------------------------------------ From patchwork Tue Apr 28 07:39:19 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Zhao1, Wei" X-Patchwork-Id: 69430 X-Patchwork-Delegate: xiaolong.ye@intel.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id A517DA034F; Tue, 28 Apr 2020 10:02:43 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 1BAD11D588; Tue, 28 Apr 2020 10:02:24 +0200 (CEST) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by dpdk.org (Postfix) with ESMTP id 548411D56A; Tue, 28 Apr 2020 10:02:20 +0200 (CEST) IronPort-SDR: LZpsdGuLmUwcs8GosMeBFSiy1hBJn69Z/7ekgIpvtVAz2j19i/I4FaBtSXKI+uLfq8WrIvU8jr s/1jZTLV7SiQ== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 28 Apr 2020 01:02:04 -0700 IronPort-SDR: sSHnNDBnCa5dzLgAs1s7ARk0b+DOKt4viY2xDGh1ZR8unzHR9IhWwG+iC1MUm0xCgNyNdBMYvU iYQm+Drw1uqQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.73,327,1583222400"; d="scan'208";a="249107164" Received: from unknown (HELO localhost.localdomain.bj.intel.com) ([172.16.182.123]) by fmsmga008.fm.intel.com with ESMTP; 28 Apr 2020 01:02:02 -0700 From: Wei Zhao To: dev@dpdk.org Cc: stable@dpdk.org, beilei.xing@intel.com, maxime.leroy@6wind.com, Wei Zhao Date: Tue, 28 Apr 2020 15:39:19 +0800 Message-Id: <20200428073919.5583-4-wei.zhao1@intel.com> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20200428073919.5583-1-wei.zhao1@intel.com> References: <20200428054815.3551-1-wei.zhao1@intel.com> <20200428073919.5583-1-wei.zhao1@intel.com> MIME-Version: 1.0 Subject: [dpdk-dev] [PATCH v3 3/3] net/i40e: remove teardown when flush FDIR filter 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" When we flush FDIR filter, we can not call i40e_fdir_teardown() function as it will free vsi used for FDIR, then the vsi->base_queue will be freed from pf->qp_pool, but vsi->base_queue can only get once when do dev init in i40e_pf_setup(). If we free it, it will never be alloc again. Bugzilla ID: 404 Fixes: 2e67a7fbf3ff ("net/i40e: config flow director automatically") Cc: stable@dpdk.org Signed-off-by: Wei Zhao --- drivers/net/i40e/i40e_flow.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i40e_flow.c index 1533d5abb..65f877866 100644 --- a/drivers/net/i40e/i40e_flow.c +++ b/drivers/net/i40e/i40e_flow.c @@ -5145,7 +5145,6 @@ i40e_flow_destroy(struct rte_eth_dev *dev, /* If the last flow is destroyed, disable fdir. */ if (!ret && TAILQ_EMPTY(&pf->fdir.fdir_list)) { - i40e_fdir_teardown(pf); i40e_fdir_rx_proc_enable(dev, 0); } break; @@ -5343,8 +5342,6 @@ i40e_flow_flush_fdir_filter(struct i40e_pf *pf) pf->fdir.inset_flag[pctype] = 0; } - i40e_fdir_teardown(pf); - return ret; }