Acked-by: Sachin Saxena <[email protected]>

regards,
Sachin Saxena

> -----Original Message-----
> From: Agalya Babu RadhaKrishnan <[email protected]>
> Sent: Tuesday, September 10, 2019 1:01 PM
> To: [email protected]
> Cc: [email protected]; Hemant Agrawal
> <[email protected]>; Sachin Saxena <[email protected]>;
> [email protected]; Agalya Babu RadhaKrishnan
> <[email protected]>; [email protected]
> Subject: [PATCH] bus/fslmc: fix for resource leak coverity issue
> Importance: High
> 
> From: Agalya Babu RadhaKrishnan <[email protected]>
> 
> 1 issue caught by 344967
> Leaked_storage: Variable sep going out of scope leaks the storage it points
> to.
> 
> When 'sep' is not null and sep_exist is 0, 'sep' is freed before going out of
> scope of the function irrespective of 'addr' exists or not.
> 
> Coverity Issue: 344967
> Fixes: e67a61614d0b ("bus/fslmc: support device iteration")
> Cc: [email protected]
> 
> Signed-off-by: Agalya Babu RadhaKrishnan
> <[email protected]>
> ---
>  drivers/bus/fslmc/fslmc_bus.c | 7 +++++--
>  1 file changed, 5 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/bus/fslmc/fslmc_bus.c b/drivers/bus/fslmc/fslmc_bus.c
> index a2f482516..60c34098c 100644
> --- a/drivers/bus/fslmc/fslmc_bus.c
> +++ b/drivers/bus/fslmc/fslmc_bus.c
> @@ -291,10 +291,13 @@ rte_fslmc_parse(const char *name, void *addr)
>               goto err_out;
>       }
> 
> -     if (addr)
> +     if (addr) {
>               strcpy(addr, sep);
> +             if (!sep_exists && sep)
> +                     free(sep);
> +             return 0;
> +     }
> 
> -     return 0;
>  err_out:
>       if (!sep_exists && sep)
>               free(sep);
> --
> 2.14.1

Reply via email to