From patchwork Mon Dec 10 09:16:00 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Yan, Zhirun" X-Patchwork-Id: 48608 X-Patchwork-Delegate: qi.z.zhang@intel.com Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 2C4E63238; Mon, 10 Dec 2018 02:39:12 +0100 (CET) Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by dpdk.org (Postfix) with ESMTP id 69E1E31FC for ; Mon, 10 Dec 2018 02:39:09 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga101.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 09 Dec 2018 17:39:08 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.56,336,1539673200"; d="scan'208";a="117404260" Received: from dpdk-server.sh.intel.com ([10.67.110.170]) by orsmga001.jf.intel.com with ESMTP; 09 Dec 2018 17:39:07 -0800 From: Zhirun Yan To: dev@dpdk.org, qi.z.zhang@intel.com, haiyue.wang@intel.com Cc: Zhirun Yan Date: Mon, 10 Dec 2018 09:16:00 +0000 Message-Id: <20181210091600.58864-1-zhirun.yan@intel.com> X-Mailer: git-send-email 2.17.1 Subject: [dpdk-dev] [PATCH v1] net/i40e: fix memory leak for dev 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" Before this patch port reset will call i40evf_dev_uninit() and i40evf_dev_init(), i40evf_dev_uninit() will call i40e_dev_free_queues to free queues. If set dev->data->nb_tx_queues = 0 in i40evf_dev_close, the next time config queue will never free these queues. Fixex: 6b4537128394 ("i40e: free queue memory when closing") Signed-off-by: Zhirun Yan Signed-off-by: Haiyue Wang --- drivers/net/i40e/i40e_rxtx.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/drivers/net/i40e/i40e_rxtx.c b/drivers/net/i40e/i40e_rxtx.c index e1152ff0e..cc953ad58 100644 --- a/drivers/net/i40e/i40e_rxtx.c +++ b/drivers/net/i40e/i40e_rxtx.c @@ -2753,7 +2753,6 @@ i40e_dev_free_queues(struct rte_eth_dev *dev) i40e_dev_rx_queue_release(dev->data->rx_queues[i]); dev->data->rx_queues[i] = NULL; } - dev->data->nb_rx_queues = 0; for (i = 0; i < dev->data->nb_tx_queues; i++) { if (!dev->data->tx_queues[i]) @@ -2761,7 +2760,6 @@ i40e_dev_free_queues(struct rte_eth_dev *dev) i40e_dev_tx_queue_release(dev->data->tx_queues[i]); dev->data->tx_queues[i] = NULL; } - dev->data->nb_tx_queues = 0; } #define I40E_FDIR_NUM_TX_DESC I40E_MIN_RING_DESC