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 F01AAA0562; Wed, 1 Apr 2020 05:42:12 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 4FCAC1BEA3; Wed, 1 Apr 2020 05:42:12 +0200 (CEST) Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by dpdk.org (Postfix) with ESMTP id 104061BE96 for ; Wed, 1 Apr 2020 05:42:09 +0200 (CEST) IronPort-SDR: RshCTvyysbucQzqudTbnLmBg8ISvQNGQ36iO7d1sVATwwhP1N91Ikic63c7n4oT2ZTgWjbGn6Z ALxHPa2qBf2Q== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 31 Mar 2020 20:42:08 -0700 IronPort-SDR: g0eYoY3dRcn7f0ZP/sC39GnNrvXod9b0Wj5G+TjPRTpjSgKhtPUePW1sms/Ty5a55ShtCFJLOG wFXsY77DyYPQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.72,330,1580803200"; d="scan'208";a="450390797" Received: from yexl-server.sh.intel.com (HELO localhost) ([10.67.117.17]) by fmsmga006.fm.intel.com with ESMTP; 31 Mar 2020 20:42:07 -0700 Date: Wed, 1 Apr 2020 11:38:41 +0800 From: Ye Xiaolong To: Lunyuan Cui Cc: dev@dpdk.org, Jingjing Wu , Qiming Yang Message-ID: <20200401033841.GL29805@intel.com> References: <20200325024758.132253-1-lunyuanx.cui@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20200325024758.132253-1-lunyuanx.cui@intel.com> User-Agent: Mutt/1.9.4 (2018-02-28) Subject: Re: [dpdk-dev] [PATCH] net/iavf: enable port reset 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" Hi, Lunyuan On 03/25, Lunyuan Cui wrote: >This patch is intended to add iavf_dev_reset ops, enable iavf to support >"port reset all". > >Signed-off-by: Lunyuan Cui >--- > drivers/net/iavf/iavf_ethdev.c | 19 +++++++++++++++++++ > 1 file changed, 19 insertions(+) > >diff --git a/drivers/net/iavf/iavf_ethdev.c b/drivers/net/iavf/iavf_ethdev.c >index 34913f9c4..01366bc3c 100644 >--- a/drivers/net/iavf/iavf_ethdev.c >+++ b/drivers/net/iavf/iavf_ethdev.c >@@ -32,6 +32,7 @@ static int iavf_dev_configure(struct rte_eth_dev *dev); > static int iavf_dev_start(struct rte_eth_dev *dev); > static void iavf_dev_stop(struct rte_eth_dev *dev); > static void iavf_dev_close(struct rte_eth_dev *dev); >+static int iavf_dev_reset(struct rte_eth_dev *dev); > static int iavf_dev_info_get(struct rte_eth_dev *dev, > struct rte_eth_dev_info *dev_info); > static const uint32_t *iavf_dev_supported_ptypes_get(struct rte_eth_dev *dev); >@@ -91,6 +92,7 @@ static const struct eth_dev_ops iavf_eth_dev_ops = { > .dev_start = iavf_dev_start, > .dev_stop = iavf_dev_stop, > .dev_close = iavf_dev_close, >+ .dev_reset = iavf_dev_reset, > .dev_infos_get = iavf_dev_info_get, > .dev_supported_ptypes_get = iavf_dev_supported_ptypes_get, > .link_update = iavf_dev_link_update, >@@ -1416,6 +1418,23 @@ iavf_dev_uninit(struct rte_eth_dev *dev) > return 0; > } > >+/* >+ * Reset VF device only to re-initialize resources in PMD layer >+ */ >+static int >+iavf_dev_reset(struct rte_eth_dev *dev) >+{ >+ int ret; >+ >+ ret = iavf_dev_uninit(dev); >+ if (ret) >+ return ret; >+ >+ ret = iavf_dev_init(dev); >+ >+ return ret; What about merging above 2 lines into return iavf_dev_init(dev); Btw, this patch can't be applied to latest next-net-intel, could you rebase and send a new version? Thanks, Xiaolong >+} >+ > static int eth_iavf_pci_probe(struct rte_pci_driver *pci_drv __rte_unused, > struct rte_pci_device *pci_dev) > { >-- >2.17.1 >