>> +       }
>> +
>> +       /* Reserve memory for args from shared mem */
>> +       shm = odp_shm_reserve("shm_args", sizeof(args_t),
>> +                             ODP_CACHE_LINE_SIZE, 0);
> 
> shm_args is allocated here, but never freed.
> 
>> 
>> +
>> +       free(gbl_args->appl.if_names);
>> +       free(gbl_args->appl.if_str);
>> +
>> +       if (odp_pool_destroy(pool)) {
>> +               LOG_ERR("Error: pool destroy\n");
>> +               exit(EXIT_FAILURE);
>> +       }
>> +
> 
> odp_shm_free(shm) belongs here for normal termination.
> 

Thanks, will fix this. This same issue is also present in multiple other 
example applications. I’ll create a separate patch to fix those.

-Matias

Reply via email to