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