blob: 653687d9771b9d0e824fe4b25eee079f7fcec1cc [file] [log] [blame]
Christopher Ferris25981132017-11-14 16:53:49 -08001/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
Ben Cheng30692c62013-10-15 18:26:18 -07002#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 */
Christopher Ferrisa1a109e2018-01-31 15:03:12 -080016#define MAP_SYNC 0x80000 /* perform synchronous page faults for the mapping */
Ben Cheng30692c62013-10-15 18:26:18 -070017
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 */
Christopher Ferris12e1f282016-02-04 12:35:07 -080022#define MCL_ONFAULT 4 /* lock all pages that are faulted in */
Ben Cheng30692c62013-10-15 18:26:18 -070023
24#endif /* __ASM_GENERIC_MMAN_H */