[dpdk-stable] [PATCH] net/softnic: fix memory leak of meter policy

dapengx.yu at intel.com dapengx.yu at intel.com
Thu Sep 30 10:34:44 CEST 2021


From: Dapeng Yu <dapengx.yu at intel.com>

After the meter policies are created, they are not freed on device
close.

This patch fixes it.

Fixes: 5f0d54f372f0 ("ethdev: add pre-defined meter policy API")
Cc: stable at dpdk.org

Signed-off-by: Dapeng Yu <dapengx.yu at intel.com>
---
 drivers/net/softnic/rte_eth_softnic_meter.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/drivers/net/softnic/rte_eth_softnic_meter.c b/drivers/net/softnic/rte_eth_softnic_meter.c
index 5831892a39..6b02f43e31 100644
--- a/drivers/net/softnic/rte_eth_softnic_meter.c
+++ b/drivers/net/softnic/rte_eth_softnic_meter.c
@@ -52,6 +52,18 @@ softnic_mtr_free(struct pmd_internals *p)
 		TAILQ_REMOVE(&p->mtr.meter_profiles, mp, node);
 		free(mp);
 	}
+
+	/* Remove meter policies */
+	for ( ; ; ) {
+		struct softnic_mtr_meter_policy *mp;
+
+		mp = TAILQ_FIRST(&p->mtr.meter_policies);
+		if (mp == NULL)
+			break;
+
+		TAILQ_REMOVE(&p->mtr.meter_policies, mp, node);
+		free(mp);
+	}
 }
 
 struct softnic_mtr_meter_profile *
-- 
2.27.0



More information about the stable mailing list