1 | /* SPDX-License-Identifier: GPL-2.0 */ |
2 | #ifndef _ELF_RANDOMIZE_H |
3 | #define _ELF_RANDOMIZE_H |
4 | |
5 | struct mm_struct; |
6 | |
7 | #ifndef CONFIG_ARCH_HAS_ELF_RANDOMIZE |
8 | static inline unsigned long arch_mmap_rnd(void) { return 0; } |
9 | # if defined(arch_randomize_brk) && defined(CONFIG_COMPAT_BRK) |
10 | # define compat_brk_randomized |
11 | # endif |
12 | # ifndef arch_randomize_brk |
13 | # define arch_randomize_brk(mm) (mm->brk) |
14 | # endif |
15 | #else |
16 | extern unsigned long arch_mmap_rnd(void); |
17 | extern unsigned long arch_randomize_brk(struct mm_struct *mm); |
18 | # ifdef CONFIG_COMPAT_BRK |
19 | # define compat_brk_randomized |
20 | # endif |
21 | #endif |
22 | |
23 | #endif |
24 | |