x86, ia32_aout: do not kill argument mapping
authorJiri Slaby <jslaby@suse.cz>
Wed, 10 Feb 2010 19:55:16 +0000 (20:55 +0100)
committerH. Peter Anvin <hpa@zytor.com>
Wed, 10 Feb 2010 20:03:34 +0000 (12:03 -0800)
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>
arch/x86/ia32/ia32_aout.c

index f9f472462753c1dd41f1a4a3087769dfdc0af6ec..14531abdd0ced75cc2f5a60e9ff29fe0308a91b8 100644 (file)
@@ -327,7 +327,6 @@ static int load_aout_binary(struct linux_binprm *bprm, struct pt_regs *regs)
        current->mm->free_area_cache = TASK_UNMAPPED_BASE;
        current->mm->cached_hole_size = 0;
 
-       current->mm->mmap = NULL;
        install_exec_creds(bprm);
        current->flags &= ~PF_FORKNOEXEC;