x86 get_unmapped_area(): use proper mmap base for bottom-up direction
authorRadu Caragea <sinaelgl@gmail.com>
Tue, 13 Aug 2013 23:00:59 +0000 (16:00 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 20 Aug 2013 15:43:02 +0000 (08:43 -0700)
commitf6c19e2f7d9204bca6576f03a117bec4eaaa9b5b
treea91b97087847cd76f1ae7906ca0f4430a13177d4
parent4f01c72ef36d3305d6273fe7f1f6670c52745c3d
x86 get_unmapped_area(): use proper mmap base for bottom-up direction

commit df54d6fa54275ce59660453e29d1228c2b45a826 upstream.

When the stack is set to unlimited, the bottomup direction is used for
mmap-ings but the mmap_base is not used and thus effectively renders
ASLR for mmapings along with PIE useless.

Reviewed-by: Rik van Riel <riel@redhat.com>
Cc: Michel Lespinasse <walken@google.com>
Cc: Oleg Nesterov <oleg@redhat.com>
Acked-by: Ingo Molnar <mingo@kernel.org>
Cc: Adrian Sendroiu <molecula2788@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/x86/kernel/sys_x86_64.c
arch/x86/mm/mmap.c
include/linux/sched.h