/* SPDX-License-Identifier: GPL-2.0 */ | |
#ifndef _ELF_RANDOMIZE_H | |
#define _ELF_RANDOMIZE_H | |
struct mm_struct; | |
#ifndef CONFIG_ARCH_HAS_ELF_RANDOMIZE | |
static inline unsigned long arch_mmap_rnd(void) { return 0; } | |
# if defined(arch_randomize_brk) && defined(CONFIG_COMPAT_BRK) | |
# define compat_brk_randomized | |
# endif | |
# ifndef arch_randomize_brk | |
# define arch_randomize_brk(mm) (mm->brk) | |
# endif | |
#else | |
extern unsigned long arch_mmap_rnd(void); | |
extern unsigned long arch_randomize_brk(struct mm_struct *mm); | |
# ifdef CONFIG_COMPAT_BRK | |
# define compat_brk_randomized | |
# endif | |
#endif | |
#endif |