Commit fa5114c7 authored by Jason Cooper's avatar Jason Cooper Committed by Linus Torvalds

arm64: use simpler API for random address requests

Currently, all callers to randomize_range() set the length to 0 and
calculate end by adding a constant to the start address.  We can simplify
the API to remove a bunch of needless checks and variables.

Use the new randomize_addr(start, range) call to set the requested
address.

Link: http://lkml.kernel.org/r/20160803233913.32511-5-jason@lakedaemon.netSigned-off-by: default avatarJason Cooper <jason@lakedaemon.net>
Acked-by: default avatarWill Deacon <will.deacon@arm.com>
Acked-by: default avatarKees Cook <keescook@chromium.org>
Cc: "Russell King - ARM Linux" <linux@arm.linux.org.uk>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent c984cbf2
...@@ -372,12 +372,8 @@ unsigned long arch_align_stack(unsigned long sp) ...@@ -372,12 +372,8 @@ unsigned long arch_align_stack(unsigned long sp)
unsigned long arch_randomize_brk(struct mm_struct *mm) unsigned long arch_randomize_brk(struct mm_struct *mm)
{ {
unsigned long range_end = mm->brk;
if (is_compat_task()) if (is_compat_task())
range_end += 0x02000000; return randomize_page(mm->brk, 0x02000000);
else else
range_end += 0x40000000; return randomize_page(mm->brk, 0x40000000);
return randomize_range(mm->brk, range_end, 0) ? : mm->brk;
} }
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment