[dpdk-stable] patch 'net/octeontx: fix memory leak of MAC address table' has been queued to LTS release 18.11.7

Kevin Traynor ktraynor at redhat.com
Fri Feb 14 18:03:20 CET 2020


Hi,

FYI, your patch has been queued to LTS release 18.11.7

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 02/20/20. So please
shout if anyone has objections.

Also note that after the patch there's a diff of the upstream commit vs the
patch applied to the branch. This will indicate if there was any rebasing
needed to apply to the stable branch. If there were code changes for rebasing
(ie: not only metadata diffs), please double check that the rebase was
correctly done.

Queued patches are on a temporary branch at:
https://github.com/kevintraynor/dpdk-stable-queue

This queued commit can be viewed at:
https://github.com/kevintraynor/dpdk-stable-queue/commit/693ba0f9ed0df1e3731f11c19ba2452568edb64b

Thanks.

Kevin.

---
>From 693ba0f9ed0df1e3731f11c19ba2452568edb64b Mon Sep 17 00:00:00 2001
From: Sunil Kumar Kori <skori at marvell.com>
Date: Wed, 29 Jan 2020 14:47:04 +0530
Subject: [PATCH] net/octeontx: fix memory leak of MAC address table

[ upstream commit 9e399b88ce2f103165512d4005611a1f709deb1d ]

MAC address table is allocated during octeontx device create and
same is used to maintain list of MAC address associated to port.
This table is not getting freed niether in case of error nor during
graceful shutdown of port.

Patch fixes memory required memory for both the cases as mentioned.

Fixes: f18b146c498d ("net/octeontx: create ethdev ports")

Signed-off-by: Sunil Kumar Kori <skori at marvell.com>
Acked-by: Harman Kalra <hkalra at marvell.com>
---
 drivers/net/octeontx/octeontx_ethdev.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/drivers/net/octeontx/octeontx_ethdev.c b/drivers/net/octeontx/octeontx_ethdev.c
index 046e129865..ac193ace43 100644
--- a/drivers/net/octeontx/octeontx_ethdev.c
+++ b/drivers/net/octeontx/octeontx_ethdev.c
@@ -347,4 +347,8 @@ octeontx_dev_close(struct rte_eth_dev *dev)
 	}
 
+	/* Free MAC address table */
+	rte_free(dev->data->mac_addrs);
+	dev->data->mac_addrs = NULL;
+
 	dev->tx_pkt_burst = NULL;
 	dev->rx_pkt_burst = NULL;
@@ -1082,5 +1086,5 @@ octeontx_create(struct rte_vdev_device *dev, int port, uint8_t evdev,
 				data->port_id, nic->port_id);
 		res = -EINVAL;
-		goto err;
+		goto free_mac_addrs;
 	}
 
@@ -1101,4 +1105,6 @@ octeontx_create(struct rte_vdev_device *dev, int port, uint8_t evdev,
 	return data->port_id;
 
+free_mac_addrs:
+	rte_free(data->mac_addrs);
 err:
 	if (nic)
-- 
2.21.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-02-14 17:02:38.487112707 +0000
+++ 0026-net-octeontx-fix-memory-leak-of-MAC-address-table.patch	2020-02-14 17:02:36.993407062 +0000
@@ -1 +1 @@
-From 9e399b88ce2f103165512d4005611a1f709deb1d Mon Sep 17 00:00:00 2001
+From 693ba0f9ed0df1e3731f11c19ba2452568edb64b Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 9e399b88ce2f103165512d4005611a1f709deb1d ]
+
@@ -14 +15,0 @@
-Cc: stable at dpdk.org
@@ -23 +24 @@
-index e23162d8a6..40d9d67dab 100644
+index 046e129865..ac193ace43 100644
@@ -26 +27 @@
-@@ -352,4 +352,8 @@ octeontx_dev_close(struct rte_eth_dev *dev)
+@@ -347,4 +347,8 @@ octeontx_dev_close(struct rte_eth_dev *dev)
@@ -35 +36 @@
-@@ -1144,5 +1148,5 @@ octeontx_create(struct rte_vdev_device *dev, int port, uint8_t evdev,
+@@ -1082,5 +1086,5 @@ octeontx_create(struct rte_vdev_device *dev, int port, uint8_t evdev,
@@ -42 +43 @@
-@@ -1163,4 +1167,6 @@ octeontx_create(struct rte_vdev_device *dev, int port, uint8_t evdev,
+@@ -1101,4 +1105,6 @@ octeontx_create(struct rte_vdev_device *dev, int port, uint8_t evdev,



More information about the stable mailing list