diff options
author | Lakshmi Ramasubramanian <nramas@linux.microsoft.com> | 2021-04-21 09:36:10 -0700 |
---|---|---|
committer | Rob Herring <robh@kernel.org> | 2021-04-26 16:28:26 -0500 |
commit | 031cc263c037a95e5d1249cbd3d55b77021f1eb8 (patch) | |
tree | 64e8a1eff5e91005d793d6da01f8135218b73d93 /arch/powerpc/kexec | |
parent | a45dd984dea9baa22b15fb692fe870ab5670a4a0 (diff) | |
download | linux-031cc263c037a95e5d1249cbd3d55b77021f1eb8.tar.bz2 |
powerpc: If kexec_build_elf_info() fails return immediately from elf64_load()
Uninitialized local variable "elf_info" would be passed to
kexec_free_elf_info() if kexec_build_elf_info() returns an error
in elf64_load().
If kexec_build_elf_info() returns an error, return the error
immediately.
Signed-off-by: Lakshmi Ramasubramanian <nramas@linux.microsoft.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Reviewed-by: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20210421163610.23775-2-nramas@linux.microsoft.com
Diffstat (limited to 'arch/powerpc/kexec')
-rw-r--r-- | arch/powerpc/kexec/elf_64.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/powerpc/kexec/elf_64.c b/arch/powerpc/kexec/elf_64.c index 02662e72c53d..eeb258002d1e 100644 --- a/arch/powerpc/kexec/elf_64.c +++ b/arch/powerpc/kexec/elf_64.c @@ -45,7 +45,7 @@ static void *elf64_load(struct kimage *image, char *kernel_buf, ret = kexec_build_elf_info(kernel_buf, kernel_len, &ehdr, &elf_info); if (ret) - goto out; + return ERR_PTR(ret); if (image->type == KEXEC_TYPE_CRASH) { /* min & max buffer values for kdump case */ |