diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2012-02-23 22:29:17 -0500 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2012-03-20 21:29:51 -0400 |
commit | 19e5109fef2c368ab3f8a5157270f87f4a7c0326 (patch) | |
tree | 31142f922de19cedfe45f0caa660a6d58674d8cc | |
parent | e59cc473cc603d562f2c80c12c943ef2a8cde6b2 (diff) |
take removal of PF_FORKNOEXEC to flush_old_exec()
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
-rw-r--r-- | arch/x86/ia32/ia32_aout.c | 1 | ||||
-rw-r--r-- | fs/binfmt_aout.c | 1 | ||||
-rw-r--r-- | fs/binfmt_elf.c | 2 | ||||
-rw-r--r-- | fs/binfmt_elf_fdpic.c | 3 | ||||
-rw-r--r-- | fs/binfmt_flat.c | 1 | ||||
-rw-r--r-- | fs/binfmt_som.c | 1 | ||||
-rw-r--r-- | fs/exec.c | 2 |
7 files changed, 1 insertions, 10 deletions
diff --git a/arch/x86/ia32/ia32_aout.c b/arch/x86/ia32/ia32_aout.c index cdfc8dc43670..4c2e59a420b9 100644 --- a/arch/x86/ia32/ia32_aout.c +++ b/arch/x86/ia32/ia32_aout.c | |||
@@ -323,7 +323,6 @@ static int load_aout_binary(struct linux_binprm *bprm, struct pt_regs *regs) | |||
323 | } | 323 | } |
324 | 324 | ||
325 | install_exec_creds(bprm); | 325 | install_exec_creds(bprm); |
326 | current->flags &= ~PF_FORKNOEXEC; | ||
327 | 326 | ||
328 | if (N_MAGIC(ex) == OMAGIC) { | 327 | if (N_MAGIC(ex) == OMAGIC) { |
329 | unsigned long text_addr, map_size; | 328 | unsigned long text_addr, map_size; |
diff --git a/fs/binfmt_aout.c b/fs/binfmt_aout.c index a543364ba29b..4d5e6d26578c 100644 --- a/fs/binfmt_aout.c +++ b/fs/binfmt_aout.c | |||
@@ -267,7 +267,6 @@ static int load_aout_binary(struct linux_binprm * bprm, struct pt_regs * regs) | |||
267 | } | 267 | } |
268 | 268 | ||
269 | install_exec_creds(bprm); | 269 | install_exec_creds(bprm); |
270 | current->flags &= ~PF_FORKNOEXEC; | ||
271 | 270 | ||
272 | if (N_MAGIC(ex) == OMAGIC) { | 271 | if (N_MAGIC(ex) == OMAGIC) { |
273 | unsigned long text_addr, map_size; | 272 | unsigned long text_addr, map_size; |
diff --git a/fs/binfmt_elf.c b/fs/binfmt_elf.c index f8ac4251877e..81878b78c9d4 100644 --- a/fs/binfmt_elf.c +++ b/fs/binfmt_elf.c | |||
@@ -712,7 +712,6 @@ static int load_elf_binary(struct linux_binprm *bprm, struct pt_regs *regs) | |||
712 | goto out_free_dentry; | 712 | goto out_free_dentry; |
713 | 713 | ||
714 | /* OK, This is the point of no return */ | 714 | /* OK, This is the point of no return */ |
715 | current->flags &= ~PF_FORKNOEXEC; | ||
716 | current->mm->def_flags = def_flags; | 715 | current->mm->def_flags = def_flags; |
717 | 716 | ||
718 | /* Do this immediately, since STACK_TOP as used in setup_arg_pages | 717 | /* Do this immediately, since STACK_TOP as used in setup_arg_pages |
@@ -934,7 +933,6 @@ static int load_elf_binary(struct linux_binprm *bprm, struct pt_regs *regs) | |||
934 | #endif /* ARCH_HAS_SETUP_ADDITIONAL_PAGES */ | 933 | #endif /* ARCH_HAS_SETUP_ADDITIONAL_PAGES */ |
935 | 934 | ||
936 | install_exec_creds(bprm); | 935 | install_exec_creds(bprm); |
937 | current->flags &= ~PF_FORKNOEXEC; | ||
938 | retval = create_elf_tables(bprm, &loc->elf_ex, | 936 | retval = create_elf_tables(bprm, &loc->elf_ex, |
939 | load_addr, interp_load_addr); | 937 | load_addr, interp_load_addr); |
940 | if (retval < 0) { | 938 | if (retval < 0) { |
diff --git a/fs/binfmt_elf_fdpic.c b/fs/binfmt_elf_fdpic.c index e7afcb67a2d3..c64bf5ee2df4 100644 --- a/fs/binfmt_elf_fdpic.c +++ b/fs/binfmt_elf_fdpic.c | |||
@@ -335,8 +335,6 @@ static int load_elf_fdpic_binary(struct linux_binprm *bprm, | |||
335 | current->mm->context.exec_fdpic_loadmap = 0; | 335 | current->mm->context.exec_fdpic_loadmap = 0; |
336 | current->mm->context.interp_fdpic_loadmap = 0; | 336 | current->mm->context.interp_fdpic_loadmap = 0; |
337 | 337 | ||
338 | current->flags &= ~PF_FORKNOEXEC; | ||
339 | |||
340 | #ifdef CONFIG_MMU | 338 | #ifdef CONFIG_MMU |
341 | elf_fdpic_arch_lay_out_mm(&exec_params, | 339 | elf_fdpic_arch_lay_out_mm(&exec_params, |
342 | &interp_params, | 340 | &interp_params, |
@@ -414,7 +412,6 @@ static int load_elf_fdpic_binary(struct linux_binprm *bprm, | |||
414 | #endif | 412 | #endif |
415 | 413 | ||
416 | install_exec_creds(bprm); | 414 | install_exec_creds(bprm); |
417 | current->flags &= ~PF_FORKNOEXEC; | ||
418 | if (create_elf_fdpic_tables(bprm, current->mm, | 415 | if (create_elf_fdpic_tables(bprm, current->mm, |
419 | &exec_params, &interp_params) < 0) | 416 | &exec_params, &interp_params) < 0) |
420 | goto error_kill; | 417 | goto error_kill; |
diff --git a/fs/binfmt_flat.c b/fs/binfmt_flat.c index 68affab88146..04f61f0bdfde 100644 --- a/fs/binfmt_flat.c +++ b/fs/binfmt_flat.c | |||
@@ -902,7 +902,6 @@ static int load_flat_binary(struct linux_binprm * bprm, struct pt_regs * regs) | |||
902 | libinfo.lib_list[j].start_data:UNLOADED_LIB; | 902 | libinfo.lib_list[j].start_data:UNLOADED_LIB; |
903 | 903 | ||
904 | install_exec_creds(bprm); | 904 | install_exec_creds(bprm); |
905 | current->flags &= ~PF_FORKNOEXEC; | ||
906 | 905 | ||
907 | set_binfmt(&flat_format); | 906 | set_binfmt(&flat_format); |
908 | 907 | ||
diff --git a/fs/binfmt_som.c b/fs/binfmt_som.c index ec15972dd98a..e4fc746629a7 100644 --- a/fs/binfmt_som.c +++ b/fs/binfmt_som.c | |||
@@ -225,7 +225,6 @@ load_som_binary(struct linux_binprm * bprm, struct pt_regs * regs) | |||
225 | goto out_free; | 225 | goto out_free; |
226 | 226 | ||
227 | /* OK, This is the point of no return */ | 227 | /* OK, This is the point of no return */ |
228 | current->flags &= ~PF_FORKNOEXEC; | ||
229 | current->personality = PER_HPUX; | 228 | current->personality = PER_HPUX; |
230 | setup_new_exec(bprm); | 229 | setup_new_exec(bprm); |
231 | 230 | ||
@@ -1110,7 +1110,7 @@ int flush_old_exec(struct linux_binprm * bprm) | |||
1110 | bprm->mm = NULL; /* We're using it now */ | 1110 | bprm->mm = NULL; /* We're using it now */ |
1111 | 1111 | ||
1112 | set_fs(USER_DS); | 1112 | set_fs(USER_DS); |
1113 | current->flags &= ~(PF_RANDOMIZE | PF_KTHREAD); | 1113 | current->flags &= ~(PF_RANDOMIZE | PF_FORKNOEXEC | PF_KTHREAD); |
1114 | flush_thread(); | 1114 | flush_thread(); |
1115 | current->personality &= ~bprm->per_clear; | 1115 | current->personality &= ~bprm->per_clear; |
1116 | 1116 | ||