xref: /linux/include/uapi/asm-generic/mman.h (revision 44f57d78)
1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 #ifndef __ASM_GENERIC_MMAN_H
3 #define __ASM_GENERIC_MMAN_H
4 
5 #include <asm-generic/mman-common.h>
6 
7 #define MAP_GROWSDOWN	0x0100		/* stack-like segment */
8 #define MAP_DENYWRITE	0x0800		/* ETXTBSY */
9 #define MAP_EXECUTABLE	0x1000		/* mark it as an executable */
10 #define MAP_LOCKED	0x2000		/* pages are locked */
11 #define MAP_NORESERVE	0x4000		/* don't check for reservations */
12 #define MAP_POPULATE	0x8000		/* populate (prefault) pagetables */
13 #define MAP_NONBLOCK	0x10000		/* do not block on IO */
14 #define MAP_STACK	0x20000		/* give out an address that is best suited for process/thread stacks */
15 #define MAP_HUGETLB	0x40000		/* create a huge page mapping */
16 #define MAP_SYNC	0x80000		/* perform synchronous page faults for the mapping */
17 
18 /* Bits [26:31] are reserved, see mman-common.h for MAP_HUGETLB usage */
19 
20 #define MCL_CURRENT	1		/* lock all current mappings */
21 #define MCL_FUTURE	2		/* lock all future mappings */
22 #define MCL_ONFAULT	4		/* lock all pages that are faulted in */
23 
24 #endif /* __ASM_GENERIC_MMAN_H */
25