diff options
Diffstat (limited to 'fs/binfmt_elf.c')
-rw-r--r-- | fs/binfmt_elf.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/fs/binfmt_elf.c b/fs/binfmt_elf.c index 76ec9d8939ff..6ae62cbf7c2e 100644 --- a/fs/binfmt_elf.c +++ b/fs/binfmt_elf.c | |||
@@ -782,14 +782,6 @@ static int load_elf_binary(struct linux_binprm * bprm, struct pt_regs * regs) | |||
782 | goto out_free_dentry; | 782 | goto out_free_dentry; |
783 | } | 783 | } |
784 | 784 | ||
785 | #ifdef ARCH_HAS_SETUP_ADDITIONAL_PAGES | ||
786 | retval = arch_setup_additional_pages(bprm, executable_stack); | ||
787 | if (retval < 0) { | ||
788 | send_sig(SIGKILL, current, 0); | ||
789 | goto out_free_dentry; | ||
790 | } | ||
791 | #endif /* ARCH_HAS_SETUP_ADDITIONAL_PAGES */ | ||
792 | |||
793 | current->mm->start_stack = bprm->p; | 785 | current->mm->start_stack = bprm->p; |
794 | 786 | ||
795 | /* Now we do a little grungy work by mmaping the ELF image into | 787 | /* Now we do a little grungy work by mmaping the ELF image into |
@@ -949,6 +941,14 @@ static int load_elf_binary(struct linux_binprm * bprm, struct pt_regs * regs) | |||
949 | 941 | ||
950 | set_binfmt(&elf_format); | 942 | set_binfmt(&elf_format); |
951 | 943 | ||
944 | #ifdef ARCH_HAS_SETUP_ADDITIONAL_PAGES | ||
945 | retval = arch_setup_additional_pages(bprm, executable_stack); | ||
946 | if (retval < 0) { | ||
947 | send_sig(SIGKILL, current, 0); | ||
948 | goto out_free_dentry; | ||
949 | } | ||
950 | #endif /* ARCH_HAS_SETUP_ADDITIONAL_PAGES */ | ||
951 | |||
952 | compute_creds(bprm); | 952 | compute_creds(bprm); |
953 | current->flags &= ~PF_FORKNOEXEC; | 953 | current->flags &= ~PF_FORKNOEXEC; |
954 | create_elf_tables(bprm, &loc->elf_ex, (interpreter_type == INTERPRETER_AOUT), | 954 | create_elf_tables(bprm, &loc->elf_ex, (interpreter_type == INTERPRETER_AOUT), |