From patchwork Wed May 27 07:16:50 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Guo, Jia" X-Patchwork-Id: 70596 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 59B4CA04A4; Wed, 27 May 2020 09:17:05 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 8F15D1D63F; Wed, 27 May 2020 09:17:04 +0200 (CEST) Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id B7EF71D40A for ; Wed, 27 May 2020 09:17:02 +0200 (CEST) IronPort-SDR: GYPUjL171WpzAOrFtDD/76XyhYjWj9DiPasK1st7LxyHjM+W0YN88TUvsMRjIpys5Xo7n7tV7V TQbhtV+ojdlw== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 May 2020 00:17:01 -0700 IronPort-SDR: amWxlPPOFnQPRtRzcJiG4MnAViLjsrjd//3lo188RFdlJTybFXd1VODeeleqKFKkM3mMupFvtG i0FggG+CfyOg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.73,440,1583222400"; d="scan'208";a="468611347" Received: from npg-dpdk-cvl-jeffguo-01.sh.intel.com ([10.67.111.128]) by fmsmga005.fm.intel.com with ESMTP; 27 May 2020 00:16:59 -0700 From: Jeff Guo To: beilei.xing@intel.com, qi.z.zhang@intel.com, jingjing.wu@intel.com, qiming.yang@intel.com Cc: xiaolong.ye@intel.com, dev@dpdk.org, jia.guo@intel.com Date: Wed, 27 May 2020 15:16:50 +0800 Message-Id: <20200527071650.82645-1-jia.guo@intel.com> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Subject: [dpdk-dev] net/iavf: fix flow uninit issue 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 closing VF device, the process of shutdown adminq should be after of the process of uninit the flow, since the VF might be still use the adminq to uninit flow. Fixes: 9e03acd726cf ("net/iavf: fix flow access") Fixes: ff2d0c345c3b ("net/iavf: support generic flow API") Signed-off-by: Jeff Guo Acked-by: Xiaolong Ye --- drivers/net/iavf/iavf_ethdev.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/drivers/net/iavf/iavf_ethdev.c b/drivers/net/iavf/iavf_ethdev.c index e09efffd1..2b1066b0a 100644 --- a/drivers/net/iavf/iavf_ethdev.c +++ b/drivers/net/iavf/iavf_ethdev.c @@ -1432,6 +1432,7 @@ iavf_dev_close(struct rte_eth_dev *dev) iavf_dev_stop(dev); iavf_flow_flush(dev, NULL); + iavf_flow_uninit(adapter); iavf_shutdown_adminq(hw); /* disable uio intr before callback unregister */ rte_intr_disable(intr_handle); @@ -1440,8 +1441,6 @@ iavf_dev_close(struct rte_eth_dev *dev) rte_intr_callback_unregister(intr_handle, iavf_dev_interrupt_handler, dev); iavf_disable_irq0(hw); - - iavf_flow_uninit(adapter); } static int