[PATCH] powerpc/kexec: Fix the return of uninitialized variable

Christophe Leroy christophe.leroy at csgroup.eu
Mon Sep 30 18:27:25 AEST 2024



Le 30/09/2024 à 09:56, Zhang Zekun a écrit :
> [Vous ne recevez pas souvent de courriers de zhangzekun11 at huawei.com. Découvrez pourquoi ceci est important à https://aka.ms/LearnAboutSenderIdentification ]
> 
> The of_property_read_u64() can fail and remain the variable uninitialized,

Replace "remain" by "leave".

> which will then be used. Return error if we failed to read the property.

Rewrite to avoid "we".  For instance "Return error if reading the 
property failed"

> 
> Fixes: 2e6bd221d96f ("powerpc/kexec_file: Enable early kernel OPAL calls")
> Signed-off-by: Zhang Zekun <zhangzekun11 at huawei.com>
> ---
>   arch/powerpc/kexec/file_load_64.c | 9 +++++++--
>   1 file changed, 7 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/powerpc/kexec/file_load_64.c b/arch/powerpc/kexec/file_load_64.c
> index 9738adabeb1f..dc65c1391157 100644
> --- a/arch/powerpc/kexec/file_load_64.c
> +++ b/arch/powerpc/kexec/file_load_64.c
> @@ -736,13 +736,18 @@ int setup_purgatory_ppc64(struct kimage *image, const void *slave_code,
>          if (dn) {
>                  u64 val;
> 
> -               of_property_read_u64(dn, "opal-base-address", &val);
> +               ret = of_property_read_u64(dn, "opal-base-address", &val);
> +               if (ret)
> +                       goto out;
> +
>                  ret = kexec_purgatory_get_set_symbol(image, "opal_base", &val,
>                                                       sizeof(val), false);
>                  if (ret)
>                          goto out;
> 
> -               of_property_read_u64(dn, "opal-entry-address", &val);
> +               ret = of_property_read_u64(dn, "opal-entry-address", &val);
> +               if (ret)
> +                       goto out;
>                  ret = kexec_purgatory_get_set_symbol(image, "opal_entry", &val,
>                                                       sizeof(val), false);
>          }
> --
> 2.17.1
> 


More information about the Linuxppc-dev mailing list