aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLakshmi Ramasubramanian <[email protected]>2021-04-21 09:36:10 -0700
committerRob Herring <[email protected]>2021-04-26 16:28:26 -0500
commit031cc263c037a95e5d1249cbd3d55b77021f1eb8 (patch)
tree64e8a1eff5e91005d793d6da01f8135218b73d93
parenta45dd984dea9baa22b15fb692fe870ab5670a4a0 (diff)
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 <[email protected]> Reported-by: Dan Carpenter <[email protected]> Reviewed-by: Michael Ellerman <[email protected]> Signed-off-by: Rob Herring <[email protected]> Link: https://lore.kernel.org/r/[email protected]
-rw-r--r--arch/powerpc/kexec/elf_64.c2
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 */