From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from dpdk.org (dpdk.org [92.243.14.124])
	by inbox.dpdk.org (Postfix) with ESMTP id 3AC88A04DD;
	Fri, 23 Oct 2020 20:36:45 +0200 (CEST)
Received: from [92.243.14.124] (localhost [127.0.0.1])
	by dpdk.org (Postfix) with ESMTP id A8DF1A8EA;
	Fri, 23 Oct 2020 20:29:19 +0200 (CEST)
Received: from mga07.intel.com (mga07.intel.com [134.134.136.100])
 by dpdk.org (Postfix) with ESMTP id 274E76883
 for <dev@dpdk.org>; Fri, 23 Oct 2020 20:28:53 +0200 (CEST)
IronPort-SDR: PQpOaXBhPZO6sLRpmtSH2ZRwPeGwFp9cnNQ61o+P/av3SZCdbO0jGmYdkTG+W+sh8rX0uYYYhr
 xrdx6i2pxKJw==
X-IronPort-AV: E=McAfee;i="6000,8403,9783"; a="231907495"
X-IronPort-AV: E=Sophos;i="5.77,409,1596524400"; d="scan'208";a="231907495"
X-Amp-Result: SKIPPED(no attachment in message)
X-Amp-File-Uploaded: False
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Oct 2020 11:28:52 -0700
IronPort-SDR: j5mOmeWX9+fr2JUM+h2ni2nyTXg/vrH4GwKlRlg/ZOlKKXujEk8B35Zobm10otK+TGxXpfXpzb
 JxBUqsnFF7gA==
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="5.77,409,1596524400"; d="scan'208";a="524764123"
Received: from txasoft-yocto.an.intel.com ([10.123.72.192])
 by fmsmga005.fm.intel.com with ESMTP; 23 Oct 2020 11:28:52 -0700
From: Timothy McDaniel <timothy.mcdaniel@intel.com>
To: 
Cc: dev@dpdk.org, erik.g.carrillo@intel.com, gage.eads@intel.com,
 harry.van.haaren@intel.com, jerinj@marvell.com
Date: Fri, 23 Oct 2020 13:30:25 -0500
Message-Id: <1603477826-31374-23-git-send-email-timothy.mcdaniel@intel.com>
X-Mailer: git-send-email 1.7.10
In-Reply-To: <1603477826-31374-1-git-send-email-timothy.mcdaniel@intel.com>
References: <1599855987-25976-2-git-send-email-timothy.mcdaniel@intel.com>
 <1603477826-31374-1-git-send-email-timothy.mcdaniel@intel.com>
Subject: [dpdk-dev] [PATCH v3 22/23] event/dlb2: add queue and port release
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org
Sender: "dev" <dev-bounces@dpdk.org>

DLB does not support reconfiguring individual queues
or ports on the fly. The entire device must be reconfigured.
Previously allocated port QE and memzone memory
is freed in this patch.

Signed-off-by: Timothy McDaniel <timothy.mcdaniel@intel.com>
Reviewed-by: Gage Eads <gage.eads@intel.com>
---
 drivers/event/dlb2/dlb2.c | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/drivers/event/dlb2/dlb2.c b/drivers/event/dlb2/dlb2.c
index 113fedf..4b4719f 100644
--- a/drivers/event/dlb2/dlb2.c
+++ b/drivers/event/dlb2/dlb2.c
@@ -3672,6 +3672,28 @@ dlb2_eventdev_close(struct rte_eventdev *dev)
 }
 
 static void
+dlb2_eventdev_queue_release(struct rte_eventdev *dev, uint8_t id)
+{
+	RTE_SET_USED(dev);
+	RTE_SET_USED(id);
+
+	/* This function intentionally left blank. */
+}
+
+static void
+dlb2_eventdev_port_release(void *port)
+{
+	struct dlb2_eventdev_port *ev_port = port;
+	struct dlb2_port *qm_port;
+
+	if (ev_port) {
+		qm_port = &ev_port->qm_port;
+		if (qm_port->config_state == DLB2_CONFIGURED)
+			dlb2_free_qe_mem(qm_port);
+	}
+}
+
+static void
 dlb2_entry_points_init(struct rte_eventdev *dev)
 {
 	struct dlb2_eventdev *dlb2;
@@ -3685,8 +3707,10 @@ dlb2_entry_points_init(struct rte_eventdev *dev)
 		.dev_close        = dlb2_eventdev_close,
 		.queue_def_conf   = dlb2_eventdev_queue_default_conf_get,
 		.queue_setup      = dlb2_eventdev_queue_setup,
+		.queue_release    = dlb2_eventdev_queue_release,
 		.port_def_conf    = dlb2_eventdev_port_default_conf_get,
 		.port_setup       = dlb2_eventdev_port_setup,
+		.port_release     = dlb2_eventdev_port_release,
 		.port_link        = dlb2_eventdev_port_link,
 		.port_unlink      = dlb2_eventdev_port_unlink,
 		.port_unlinks_in_progress =
-- 
2.6.4