diff options
author | Christophe JAILLET <christophe.jaillet@wanadoo.fr> | 2023-05-28 18:20:25 +0200 |
---|---|---|
committer | Kees Cook <keescook@chromium.org> | 2023-05-31 00:49:46 +0200 |
commit | 36650a357eac3e525edbd31db4fe45841b05dc3b (patch) | |
tree | 885ffa705849ade38e414bf37f186b409a5afdb8 /fs/binfmt_elf_fdpic.c | |
parent | binfmt: Use struct_size() (diff) | |
download | linux-36650a357eac3e525edbd31db4fe45841b05dc3b.tar.xz linux-36650a357eac3e525edbd31db4fe45841b05dc3b.zip |
binfmt: Slightly simplify elf_fdpic_map_file()
There is no point in initializing 'load_addr' and 'seg' here, they are both
re-written just before being used below.
Doing so, 'load_addr' can be moved in the #ifdef CONFIG_MMU section.
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Acked-by: "Eric W. Biederman" <ebiederm@xmission.com>
Signed-off-by: Kees Cook <keescook@chromium.org>
Link: https://lore.kernel.org/r/4f5e4096ad7f17716e924b5bd080e5709fc0b84b.1685290790.git.christophe.jaillet@wanadoo.fr
Diffstat (limited to 'fs/binfmt_elf_fdpic.c')
-rw-r--r-- | fs/binfmt_elf_fdpic.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/fs/binfmt_elf_fdpic.c b/fs/binfmt_elf_fdpic.c index 237ce388d06d..1c6c5832af86 100644 --- a/fs/binfmt_elf_fdpic.c +++ b/fs/binfmt_elf_fdpic.c @@ -743,11 +743,12 @@ static int elf_fdpic_map_file(struct elf_fdpic_params *params, struct elf32_fdpic_loadmap *loadmap; #ifdef CONFIG_MMU struct elf32_fdpic_loadseg *mseg; + unsigned long load_addr; #endif struct elf32_fdpic_loadseg *seg; struct elf32_phdr *phdr; - unsigned long load_addr, stop; unsigned nloads, tmp; + unsigned long stop; int loop, ret; /* allocate a load map table */ @@ -768,9 +769,6 @@ static int elf_fdpic_map_file(struct elf_fdpic_params *params, loadmap->version = ELF32_FDPIC_LOADMAP_VERSION; loadmap->nsegs = nloads; - load_addr = params->load_addr; - seg = loadmap->segs; - /* map the requested LOADs into the memory space */ switch (params->flags & ELF_FDPIC_FLAG_ARRANGEMENT) { case ELF_FDPIC_FLAG_CONSTDISP: |