On 06/03/2021 15:11, Jia-Ju Bai wrote:
> When kcalloc() fails and __tcbp is NULL, no error return code of
> thermal_of_populate_bind_params() is assigned.
> To fix this bug, ret is assigned with -ENOMEM in this case.
> 
> Reported-by: TOTE Robot <[email protected]>
> Signed-off-by: Jia-Ju Bai <[email protected]>
> ---
>  drivers/thermal/thermal_of.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/thermal/thermal_of.c b/drivers/thermal/thermal_of.c
> index 69ef12f852b7..e8c9041482e9 100644
> --- a/drivers/thermal/thermal_of.c
> +++ b/drivers/thermal/thermal_of.c
> @@ -710,8 +710,10 @@ static int thermal_of_populate_bind_params(struct 
> device_node *np,
>       }
>  
>       __tcbp = kcalloc(count, sizeof(*__tcbp), GFP_KERNEL);
> -     if (!__tcbp)
> +     if (!__tcbp) {
> +             ret = -ENOMEM;
>               goto end;
> +     }

Thank you for your patch.

Seems like the same happens a few lines before:

        count = of_count_phandle_with_args(np, "cooling-device",
                                           "#cooling-cells");
        if (!count) {
                pr_err("Add a cooling_device property with at least one
device\n");
                goto end;
        }

Mind to send a patch fixing both ?

Thanks

  -- Daniel



-- 
<http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs

Follow Linaro:  <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog

Reply via email to