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