s390/kexec_file: Fix potential segment overlap in ELF loader

When loading an ELF image via kexec_file the segment alignment is ignored
in the calculation for the load address of the next segment. When there are
multiple segments this can lead to segment overlap and thus load failure.

Signed-off-by: Philipp Rudo <prudo@linux.ibm.com>
Fixes: 8be0188271 ("s390/kexec_file: Add ELF loader")
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
This commit is contained in:
Philipp Rudo 2019-04-01 12:13:42 +02:00 committed by Martin Schwidefsky
parent f3df44e7c9
commit 6339a3889a
1 changed files with 1 additions and 1 deletions

View File

@ -53,7 +53,7 @@ static int kexec_file_add_elf_kernel(struct kimage *image,
if (ret)
return ret;
data->memsz += buf.memsz;
data->memsz = ALIGN(data->memsz, phdr->p_align) + buf.memsz;
}
return 0;