blob: 2dffcbf705b37857d9289dedd2e5807322382984 [file] [log] [blame]
Ingo Molnarfb7df122017-11-03 12:18:37 +01001/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
Wang Nanf3539c12016-09-12 12:54:29 +00002#ifndef __ASM_GENERIC_MMAN_H
3#define __ASM_GENERIC_MMAN_H
4
Ingo Molnarfb7df122017-11-03 12:18:37 +01005#include <asm-generic/mman-common.h>
Wang Nanf3539c12016-09-12 12:54:29 +00006
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
17/* Bits [26:31] are reserved, see mman-common.h for MAP_HUGETLB usage */
18
19#define MCL_CURRENT 1 /* lock all current mappings */
20#define MCL_FUTURE 2 /* lock all future mappings */
21#define MCL_ONFAULT 4 /* lock all pages that are faulted in */
22
23#endif /* __ASM_GENERIC_MMAN_H */