Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit cc92c28b authored by Nicolas Pitre's avatar Nicolas Pitre
Browse files

[ARM] add address randomization to mmap()

parent 990cb8ac
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -7,6 +7,7 @@
#include <linux/shm.h>
#include <linux/sched.h>
#include <linux/io.h>
#include <linux/random.h>
#include <asm/cputype.h>
#include <asm/system.h>

@@ -80,6 +81,9 @@ arch_get_unmapped_area(struct file *filp, unsigned long addr,
	        start_addr = addr = TASK_UNMAPPED_BASE;
	        mm->cached_hole_size = 0;
	}
	/* 8 bits of randomness in 20 address space bits */
	if (current->flags & PF_RANDOMIZE)
		addr += (get_random_int() % (1 << 8)) << PAGE_SHIFT;

full_search:
	if (do_align)