From 4e1c139f79207ef1d67cf680970e801c902ae533 Mon Sep 17 00:00:00 2001 From: Reshma Pattan Date: Tue, 4 Oct 2016 17:42:22 +0100 Subject: [PATCH] app/procinfo: free xstats memory upon failure Some of the failures cases inside the nic_xstats_display() function doesn't free the allocated memory for the xstats and their names, memory is freed now. Fixes: e2aae1c1 ("ethdev: remove name from extended statistic fetch") Fixes: 22561383 ("app: replace dump_cfg by proc_info") Signed-off-by: Reshma Pattan Acked-by: Remy Horton --- app/proc_info/main.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/proc_info/main.c b/app/proc_info/main.c index 8246fb2aec..2c56d10667 100644 --- a/app/proc_info/main.c +++ b/app/proc_info/main.c @@ -268,7 +268,7 @@ nic_xstats_display(uint8_t port_id) if (len != rte_eth_xstats_get_names( port_id, xstats_names, len)) { printf("Cannot get xstat names\n"); - return; + goto err; } printf("###### NIC extended statistics for port %-2d #########\n", @@ -278,8 +278,7 @@ nic_xstats_display(uint8_t port_id) ret = rte_eth_xstats_get(port_id, xstats, len); if (ret < 0 || ret > len) { printf("Cannot get xstats\n"); - free(xstats); - return; + goto err; } for (i = 0; i < len; i++) @@ -289,6 +288,7 @@ nic_xstats_display(uint8_t port_id) printf("%s############################\n", nic_stats_border); +err: free(xstats); free(xstats_names); } -- 2.20.1