aboutsummaryrefslogtreecommitdiff
path: root/arch/arm64/mm/mmap.c
diff options
context:
space:
mode:
authorAlex Shi <alex.shi@linaro.org>2016-04-07 21:38:47 +0800
committerAlex Shi <alex.shi@linaro.org>2016-04-07 21:38:47 +0800
commitc2120827cd39cee55136f088d26a005664d48710 (patch)
tree8d8d7c35f1e8577c0542dfe375face0d287f0f53 /arch/arm64/mm/mmap.c
parent5911f9c0e5c1882d95332a558b6dac4109143a9b (diff)
parent27fc106f94587eb63401b26d9526128eb42ce8aa (diff)
Merge remote-tracking branch 'linux-linaro-lsk-v4.1-android-test' into linux-linaro-lsk-v4.1-android
Diffstat (limited to 'arch/arm64/mm/mmap.c')
-rw-r--r--arch/arm64/mm/mmap.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/arch/arm64/mm/mmap.c b/arch/arm64/mm/mmap.c
index ed177475dd8c..4c893b5189dd 100644
--- a/arch/arm64/mm/mmap.c
+++ b/arch/arm64/mm/mmap.c
@@ -51,8 +51,12 @@ unsigned long arch_mmap_rnd(void)
{
unsigned long rnd;
- rnd = (unsigned long)get_random_int() & STACK_RND_MASK;
-
+#ifdef CONFIG_COMPAT
+ if (test_thread_flag(TIF_32BIT))
+ rnd = (unsigned long)get_random_int() & ((1 << mmap_rnd_compat_bits) - 1);
+ else
+#endif
+ rnd = (unsigned long)get_random_int() & ((1 << mmap_rnd_bits) - 1);
return rnd << PAGE_SHIFT;
}