DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH] metrics: fix resource leak on memory allocation fail
@ 2020-09-17 15:03 Ciara Power
  2020-09-17 16:08 ` [dpdk-dev] [dpdk-stable] " Mcnamara, John
  2020-11-03 21:36 ` [dpdk-dev] " David Marchand
  0 siblings, 2 replies; 5+ messages in thread
From: Ciara Power @ 2020-09-17 15:03 UTC (permalink / raw)
  To: dev; +Cc: Ciara Power, stable, Keith Wiles

If an error occurred when allocating memory for metrics or names,
the function returned without freeing allocated memory. This is now
fixed to avoid the resource leak in the case that either metrics or
names had been successfully allocated memory.

Coverity issue: 362053
Fixes: c5b7197f662e ("telemetry: move some functions to metrics library")
Cc: stable@dpdk.org

Signed-off-by: Ciara Power <ciara.power@intel.com>
---
 lib/librte_metrics/rte_metrics_telemetry.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/lib/librte_metrics/rte_metrics_telemetry.c b/lib/librte_metrics/rte_metrics_telemetry.c
index 289ebae0bd..36a3821b4c 100644
--- a/lib/librte_metrics/rte_metrics_telemetry.c
+++ b/lib/librte_metrics/rte_metrics_telemetry.c
@@ -170,7 +170,8 @@ rte_metrics_tel_format_port(uint32_t pid, json_t *ports,
 	names = malloc(sizeof(struct rte_metric_name) * num_metrics);
 	if (metrics == NULL || names == NULL) {
 		METRICS_LOG_ERR("Cannot allocate memory");
-		return -ENOMEM;
+		ret = -ENOMEM;
+		goto fail;
 	}
 
 	if (rte_metrics_get_names(names, num_metrics) != num_metrics ||
-- 
2.17.1


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2020-11-03 21:36 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-09-17 15:03 [dpdk-dev] [PATCH] metrics: fix resource leak on memory allocation fail Ciara Power
2020-09-17 16:08 ` [dpdk-dev] [dpdk-stable] " Mcnamara, John
2020-09-21 23:43   ` Honnappa Nagarahalli
2020-09-22 10:28     ` Power, Ciara
2020-11-03 21:36 ` [dpdk-dev] " David Marchand

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).