app/proc-info: add rte_eal_cleanup() to avoid memory leak
Checks
Commit Message
when app is launched with -m proc-info exit without
rte_eal_cleanup() causing memory leakage. This commit resolves the
memory leakage issue and closes app properly.
Bugzilla id: 898
Signed-off-by: Fidaullah Noonari <fidaullah.noonari@emumba.com>
---
app/proc-info/main.c | 3 +++
1 file changed, 3 insertions(+)
Comments
On Thu, 18 Aug 2022 16:37:42 +0500
Fidaullah Noonari <fidaullah.noonari@emumba.com> wrote:
> when app is launched with -m proc-info exit without
> rte_eal_cleanup() causing memory leakage. This commit resolves the
> memory leakage issue and closes app properly.
>
> Bugzilla id: 898
>
> Signed-off-by: Fidaullah Noonari <fidaullah.noonari@emumba.com>
> ---
> app/proc-info/main.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/app/proc-info/main.c b/app/proc-info/main.c
> index 1bfba5f60d..44a946045e 100644
> --- a/app/proc-info/main.c
> +++ b/app/proc-info/main.c
> @@ -1523,6 +1523,9 @@ main(int argc, char **argv)
>
> if (mem_info) {
> meminfo_display();
> + ret = rte_eal_cleanup();
> + if (ret != 0)
> + printf("Error from rte_eal_cleanup(), %d\n", ret);
A goto would avoid duplicating code:
diff --git a/app/proc-info/main.c b/app/proc-info/main.c
index 1bfba5f60d10..9cfcce31ab9a 100644
--- a/app/proc-info/main.c
+++ b/app/proc-info/main.c
@@ -1523,7 +1523,7 @@ main(int argc, char **argv)
if (mem_info) {
meminfo_display();
- return 0;
+ goto cleanup;
}
nb_ports = rte_eth_dev_count_avail();
@@ -1593,6 +1593,7 @@ main(int argc, char **argv)
RTE_ETH_FOREACH_DEV(i)
rte_eth_dev_close(i);
+cleanup:
ret = rte_eal_cleanup();
if (ret)
printf("Error from rte_eal_cleanup(), %d\n", ret);
@@ -1523,6 +1523,9 @@ main(int argc, char **argv)
if (mem_info) {
meminfo_display();
+ ret = rte_eal_cleanup();
+ if (ret != 0)
+ printf("Error from rte_eal_cleanup(), %d\n", ret);
return 0;
}