1#ifndef _ASM_GENERIC_MMAN_H 2#define _ASM_GENERIC_MMAN_H 3 4 5#define PROT_READ 0x1 /* page can be read */ 6#define PROT_WRITE 0x2 /* page can be written */ 7#define PROT_EXEC 0x4 /* page can be executed */ 8#define PROT_SEM 0x8 /* page may be used for atomic ops */ 9#define PROT_NONE 0x0 /* page can not be accessed */ 10#define PROT_GROWSDOWN 0x01000000 /* mprotect flag: extend change to start of growsdown vma */ 11#define PROT_GROWSUP 0x02000000 /* mprotect flag: extend change to end of growsup vma */ 12 13#define MAP_SHARED 0x01 /* Share changes */ 14#define MAP_PRIVATE 0x02 /* Changes are private */ 15#define MAP_TYPE 0x0f /* Mask for type of mapping */ 16#define MAP_FIXED 0x10 /* Interpret addr exactly */ 17#define MAP_ANONYMOUS 0x20 /* don't use a file */ 18 19#define MS_ASYNC 1 /* sync memory asynchronously */ 20#define MS_INVALIDATE 2 /* invalidate the caches */ 21#define MS_SYNC 4 /* synchronous memory sync */ 22 23#define MADV_NORMAL 0 /* no further special treatment */ 24#define MADV_RANDOM 1 /* expect random page references */ 25#define MADV_SEQUENTIAL 2 /* expect sequential page references */ 26#define MADV_WILLNEED 3 /* will need these pages */ 27#define MADV_DONTNEED 4 /* don't need these pages */ 28 29/* common parameters: try to keep these consistent across architectures */ 30#define MADV_REMOVE 9 /* remove these pages & resources */ 31#define MADV_DONTFORK 10 /* don't inherit across fork */ 32#define MADV_DOFORK 11 /* do inherit across fork */ 33 34/* compatibility flags */ 35#define MAP_FILE 0 36 37#endif 38