summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJiri Slaby <jslaby@suse.cz>2010-02-10 20:55:16 +0100
committerGreg Kroah-Hartman <gregkh@suse.de>2010-03-15 09:06:49 -0700
commit49370462cbfb264bba46d32a8dc6aabb8a8b2bdd (patch)
tree114074e55ce75e9906d76b9ddb55aad22dad343b
parent830ae40a16b41f081b0c9e317fd03889ea136327 (diff)
downloadkernel-crypto-49370462cbfb264bba46d32a8dc6aabb8a8b2bdd.tar.gz
kernel-crypto-49370462cbfb264bba46d32a8dc6aabb8a8b2bdd.tar.xz
kernel-crypto-49370462cbfb264bba46d32a8dc6aabb8a8b2bdd.zip
x86, ia32_aout: do not kill argument mapping
commit 318f6b228ba88a394ef560efc1bfe028ad5ae6b6 upstream. 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 Signed-off-by: H. Peter Anvin <hpa@zytor.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r--arch/x86/ia32/ia32_aout.c1
1 files changed, 0 insertions, 1 deletions
diff --git a/arch/x86/ia32/ia32_aout.c b/arch/x86/ia32/ia32_aout.c
index f9f47246275..14531abdd0c 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)
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;