[dpdk-stable] patch 'net/mlx4: fix leak when configured repeatedly' has been queued to stable release 19.11.9

Christian Ehrhardt christian.ehrhardt at canonical.com
Thu Jun 10 14:06:33 CEST 2021


Hi,

FYI, your patch has been queued to stable release 19.11.9

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 06/12/21. 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/cpaelzer/dpdk-stable-queue

This queued commit can be viewed at:
https://github.com/cpaelzer/dpdk-stable-queue/commit/bb7601591b8467a38515cb1597a7511e6a0d5f0e

Thanks.

Christian Ehrhardt <christian.ehrhardt at canonical.com>

---
>From bb7601591b8467a38515cb1597a7511e6a0d5f0e Mon Sep 17 00:00:00 2001
From: Yunjian Wang <wangyunjian at huawei.com>
Date: Thu, 13 May 2021 11:38:56 +0800
Subject: [PATCH] net/mlx4: fix leak when configured repeatedly

[ upstream commit 6f14d4d75aa07210d13fe0a7fcc5c26273c835d1 ]

Currently, configuring a mlx device, it will allocate its
own process private in mlx5_proc_priv_init() and only frees
it when closing the device. This will lead to a memory leak,
when a device is configured repeatedly.

For example:
for(...)
do
    rte_eth_dev_configure
    rte_eth_rx_queue_setup
    rte_eth_tx_queue_setup
    rte_eth_dev_start
    rte_eth_dev_stop
done

Fixes: 97d37d2c1f6b ("net/mlx4: remove device register remap")

Signed-off-by: Yunjian Wang <wangyunjian at huawei.com>
Acked-by: Viacheslav Ovsiienko <viacheslavo at nvidia.com>
---
 drivers/net/mlx4/mlx4.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/net/mlx4/mlx4.c b/drivers/net/mlx4/mlx4.c
index 96f5af8069..8397f408f4 100644
--- a/drivers/net/mlx4/mlx4.c
+++ b/drivers/net/mlx4/mlx4.c
@@ -204,6 +204,7 @@ mlx4_proc_priv_init(struct rte_eth_dev *dev)
 	struct mlx4_proc_priv *ppriv;
 	size_t ppriv_size;
 
+	mlx4_proc_priv_uninit(dev);
 	/*
 	 * UAR register table follows the process private structure. BlueFlame
 	 * registers for Tx queues are stored in the table.
-- 
2.31.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2021-06-10 14:05:00.179414948 +0200
+++ 0045-net-mlx4-fix-leak-when-configured-repeatedly.patch	2021-06-10 14:04:58.086024792 +0200
@@ -1 +1 @@
-From 6f14d4d75aa07210d13fe0a7fcc5c26273c835d1 Mon Sep 17 00:00:00 2001
+From bb7601591b8467a38515cb1597a7511e6a0d5f0e Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 6f14d4d75aa07210d13fe0a7fcc5c26273c835d1 ]
+
@@ -22 +23,0 @@
-Cc: stable at dpdk.org
@@ -31 +32 @@
-index 7cd35cd3ca..c522157a0a 100644
+index 96f5af8069..8397f408f4 100644
@@ -34 +35 @@
-@@ -201,6 +201,7 @@ mlx4_proc_priv_init(struct rte_eth_dev *dev)
+@@ -204,6 +204,7 @@ mlx4_proc_priv_init(struct rte_eth_dev *dev)


More information about the stable mailing list