diff options
author | Jiri Slaby <jslaby@suse.cz> | 2010-02-10 14:55:16 -0500 |
---|---|---|
committer | H. Peter Anvin <hpa@zytor.com> | 2010-02-10 15:03:34 -0500 |
commit | 318f6b228ba88a394ef560efc1bfe028ad5ae6b6 (patch) | |
tree | c0e8ec7aa9d916f81515ccd17daddb21756628d1 /arch/x86/ia32/ia32_aout.c | |
parent | 681ee44d40d7c93b42118320e4620d07d8704fd6 (diff) |
x86, ia32_aout: do not kill argument mapping
Do not set current->mm->mmap to NULL in 32-bit emulation on 64-bit
load_aout_binary after flush_old_exec as it would destroy already
set brpm mapping with arguments.
Introduced by b6a2fea39318e43fee84fa7b0b90d68bed92d2ba
mm: variable length argument support
where the argument mapping in bprm was added.
[ hpa: this is a regression from 2.6.22... time to kill a.out? ]
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
LKML-Reference: <1265831716-7668-1-git-send-email-jslaby@suse.cz>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ollie Wild <aaw@google.com>
Cc: x86@kernel.org
Cc: <stable@kernel.org>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Diffstat (limited to 'arch/x86/ia32/ia32_aout.c')
-rw-r--r-- | arch/x86/ia32/ia32_aout.c | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/arch/x86/ia32/ia32_aout.c b/arch/x86/ia32/ia32_aout.c index f9f472462753..14531abdd0ce 100644 --- a/arch/x86/ia32/ia32_aout.c +++ b/arch/x86/ia32/ia32_aout.c | |||
@@ -327,7 +327,6 @@ static int load_aout_binary(struct linux_binprm *bprm, struct pt_regs *regs) | |||
327 | current->mm->free_area_cache = TASK_UNMAPPED_BASE; | 327 | current->mm->free_area_cache = TASK_UNMAPPED_BASE; |
328 | current->mm->cached_hole_size = 0; | 328 | current->mm->cached_hole_size = 0; |
329 | 329 | ||
330 | current->mm->mmap = NULL; | ||
331 | install_exec_creds(bprm); | 330 | install_exec_creds(bprm); |
332 | current->flags &= ~PF_FORKNOEXEC; | 331 | current->flags &= ~PF_FORKNOEXEC; |
333 | 332 | ||