From patchwork Fri Jul 16 14:27:53 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ferruh Yigit X-Patchwork-Id: 95990 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 57558A0C50; Fri, 16 Jul 2021 16:28:10 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 3EC994137F; Fri, 16 Jul 2021 16:28:10 +0200 (CEST) Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by mails.dpdk.org (Postfix) with ESMTP id 215684068E for ; Fri, 16 Jul 2021 16:28:08 +0200 (CEST) X-IronPort-AV: E=McAfee;i="6200,9189,10046"; a="191107294" X-IronPort-AV: E=Sophos;i="5.84,245,1620716400"; d="scan'208";a="191107294" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Jul 2021 07:28:07 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.84,245,1620716400"; d="scan'208";a="460769716" Received: from silpixa00399752.ir.intel.com (HELO silpixa00399752.ger.corp.intel.com) ([10.237.222.27]) by orsmga008.jf.intel.com with ESMTP; 16 Jul 2021 07:28:04 -0700 From: Ferruh Yigit To: Andrew Rybchenko , Thomas Monjalon Cc: Ferruh Yigit , dev@dpdk.org Date: Fri, 16 Jul 2021 15:27:53 +0100 Message-Id: <20210716142800.3853651-1-ferruh.yigit@intel.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210617081449.2045195-1-ferruh.yigit@intel.com> References: <20210617081449.2045195-1-ferruh.yigit@intel.com> MIME-Version: 1.0 Subject: [dpdk-dev] [RFC v2 1/8] test/virtual_pmd: clean rings on close X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 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" Not cleaning the rings prevents creating devices again, which breaks to run some unit tests multiple times. Signed-off-by: Ferruh Yigit --- app/test/virtual_pmd.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/app/test/virtual_pmd.c b/app/test/virtual_pmd.c index 7036f401ed95..6098e633f35a 100644 --- a/app/test/virtual_pmd.c +++ b/app/test/virtual_pmd.c @@ -34,7 +34,7 @@ struct virtual_ethdev_queue { }; static int -virtual_ethdev_start_success(struct rte_eth_dev *eth_dev __rte_unused) +virtual_ethdev_start_success(struct rte_eth_dev *eth_dev) { eth_dev->data->dev_started = 1; @@ -42,13 +42,13 @@ virtual_ethdev_start_success(struct rte_eth_dev *eth_dev __rte_unused) } static int -virtual_ethdev_start_fail(struct rte_eth_dev *eth_dev __rte_unused) +virtual_ethdev_start_fail(struct rte_eth_dev *eth_dev) { eth_dev->data->dev_started = 0; return -1; } -static int virtual_ethdev_stop(struct rte_eth_dev *eth_dev __rte_unused) +static int virtual_ethdev_stop(struct rte_eth_dev *eth_dev) { void *pkt = NULL; struct virtual_ethdev_private *prv = eth_dev->data->dev_private; @@ -65,8 +65,13 @@ static int virtual_ethdev_stop(struct rte_eth_dev *eth_dev __rte_unused) } static int -virtual_ethdev_close(struct rte_eth_dev *dev __rte_unused) +virtual_ethdev_close(struct rte_eth_dev *eth_dev) { + struct virtual_ethdev_private *prv = eth_dev->data->dev_private; + + rte_ring_free(prv->rx_queue); + rte_ring_free(prv->tx_queue); + return 0; }