[PATCH] app/testpmd: fix memory leak for dscp table

Jasvinder Singh jasvinder.singh at intel.com
Tue Jun 28 15:29:16 CEST 2022


This patch fixes memory leak reported by coverity.

Coverity issue: 379220
Fixes: 9f5488e326d3 ("app/testpmd: support different input color method")

Cc: stable at dpdk.org

Signed-off-by: Jasvinder Singh <jasvinder.singh at intel.com>
---
 app/test-pmd/cmdline_mtr.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/app/test-pmd/cmdline_mtr.c b/app/test-pmd/cmdline_mtr.c
index b92e66cedb..833273da0d 100644
--- a/app/test-pmd/cmdline_mtr.c
+++ b/app/test-pmd/cmdline_mtr.c
@@ -131,8 +131,10 @@ parse_input_color_table_entries(char *str, enum rte_color **dscp_table,
 	/* Allocate memory for vlan table */
 	vlan = (enum rte_color *)malloc(MAX_VLAN_TABLE_ENTRIES *
 		sizeof(enum rte_color));
-	if (vlan == NULL)
+	if (vlan == NULL) {
+		free(*dscp_table);
 		return -1;
+	}
 
 	i = 0;
 	while (1) {
@@ -144,6 +146,7 @@ parse_input_color_table_entries(char *str, enum rte_color **dscp_table,
 			vlan[i++] = RTE_COLOR_RED;
 		else {
 			free(vlan);
+			free(*dscp_table);
 			return -1;
 		}
 		if (i == MAX_VLAN_TABLE_ENTRIES)
@@ -152,6 +155,7 @@ parse_input_color_table_entries(char *str, enum rte_color **dscp_table,
 		token = strtok_r(str, PARSE_DELIMITER, &str);
 		if (token == NULL) {
 			free(vlan);
+			free(*dscp_table);
 			return -1;
 		}
 	}
-- 
2.34.3



More information about the stable mailing list