diff options
Diffstat (limited to 'sysdeps')
-rw-r--r-- | sysdeps/unix/sysv/linux/hppa/bits/mman.h | 78 |
1 files changed, 27 insertions, 51 deletions
diff --git a/sysdeps/unix/sysv/linux/hppa/bits/mman.h b/sysdeps/unix/sysv/linux/hppa/bits/mman.h index fd07a65868..deecac0504 100644 --- a/sysdeps/unix/sysv/linux/hppa/bits/mman.h +++ b/sysdeps/unix/sysv/linux/hppa/bits/mman.h @@ -22,33 +22,10 @@ /* These are taken from the kernel definitions. */ -#define PROT_READ 0x1 /* Page can be read */ -#define PROT_WRITE 0x2 /* Page can be written */ -#define PROT_EXEC 0x4 /* Page can be executed */ -#define PROT_NONE 0x0 /* Page can not be accessed */ -#define PROT_GROWSDOWN 0x01000000 /* Extend change to start of - growsdown vma (mprotect only). */ -#define PROT_GROWSUP 0x02000000 /* Extend change to start of - growsup vma (mprotect only). */ - -#define MAP_SHARED 0x01 /* Share changes */ -#define MAP_PRIVATE 0x02 /* Changes are private */ -#ifdef __USE_MISC -# define MAP_SHARED_VALIDATE 0x03 /* Share changes and validate - extension flags. */ -# define MAP_TYPE 0x2b /* Mask for type of mapping */ -#endif - /* Other flags. */ -#define MAP_FIXED 0x04 /* Interpret addr exactly */ +#define __MAP_ANONYMOUS 0x10 /* Don't use a file */ #ifdef __USE_MISC -# define MAP_FILE 0x0 -# define MAP_ANONYMOUS 0x10 /* Don't use a file */ -# define MAP_ANON MAP_ANONYMOUS # define MAP_VARIABLE 0 -/* When MAP_HUGETLB is set bits [26:31] encode the log2 of the huge page size. */ -# define MAP_HUGE_SHIFT 26 -# define MAP_HUGE_MASK 0x3f #endif /* These are Linux-specific. */ @@ -66,47 +43,46 @@ underlying mapping. */ #endif +/* Advice to "madvise" */ +#ifdef __USE_MISC +# define MADV_SOFT_OFFLINE 101 /* Soft offline page for testing. */ +#endif + +#include <bits/mman-linux.h> + +#ifdef __USE_MISC +# undef MAP_TYPE +# define MAP_TYPE 0x2b /* Mask for type of mapping */ +#endif + +#undef MAP_FIXED +#define MAP_FIXED 0x04 /* Interpret addr exactly */ + /* Flags to "msync" */ +#undef MS_SYNC #define MS_SYNC 1 /* Synchronous memory sync */ +#undef MS_ASYNC #define MS_ASYNC 2 /* Sync memory asynchronously */ +#undef MS_INVALIDATE #define MS_INVALIDATE 4 /* Invalidate the caches */ -/* Flags to "mlockall" */ -#define MCL_CURRENT 1 /* Lock all current mappings */ -#define MCL_FUTURE 2 /* Lock all future mappings */ -#define MCL_ONFAULT 4 /* Lock all pages that are faulted in */ - /* Advice to "madvise" */ #ifdef __USE_MISC -# define MADV_NORMAL 0 /* No further special treatment */ -# define MADV_RANDOM 1 /* Expect random page references */ -# define MADV_SEQUENTIAL 2 /* Expect sequential page references */ -# define MADV_WILLNEED 3 /* Will need these pages */ -# define MADV_DONTNEED 4 /* Dont need these pages */ -# define MADV_FREE 8 /* Free pages only if memory pressure. */ -# define MADV_REMOVE 9 /* Remove these pages and resources. */ -# define MADV_DONTFORK 10 /* Do not inherit across fork. */ -# define MADV_DOFORK 11 /* Do inherit across fork. */ +# undef MADV_MERGEABLE # define MADV_MERGEABLE 65 /* KSM may merge identical pages */ +# undef MADV_UNMERGEABLE # define MADV_UNMERGEABLE 66 /* KSM may not merge identical pages */ +# undef MADV_HUGEPAGE # define MADV_HUGEPAGE 67 /* Worth backing with hugepages */ +# undef MADV_NOHUGEPAGE # define MADV_NOHUGEPAGE 68 /* Not worth backing with hugepages */ +# undef MADV_DONTDUMP # define MADV_DONTDUMP 69 /* Explicity exclude from the core dump, overrides the coredump filter bits */ +# undef MADV_DODUMP # define MADV_DODUMP 70 /* Clear the MADV_NODUMP flag */ +# undef MADV_WIPEONFORK # define MADV_WIPEONFORK 71 /* Zero memory on fork, child only. */ +# undef MADV_KEEPONFORK # define MADV_KEEPONFORK 72 /* Undo MADV_WIPEONFORK. */ -# define MADV_HWPOISON 100 /* Poison a page for testing. */ -# define MADV_SOFT_OFFLINE 101 /* Soft offline page for testing. */ #endif - -/* The POSIX people had to invent similar names for the same things. */ -#ifdef __USE_XOPEN2K -# define POSIX_MADV_NORMAL 0 /* No further special treatment. */ -# define POSIX_MADV_RANDOM 1 /* Expect random page references. */ -# define POSIX_MADV_SEQUENTIAL 2 /* Expect sequential page references. */ -# define POSIX_MADV_WILLNEED 3 /* Will need these pages. */ -# define POSIX_MADV_DONTNEED 4 /* Don't need these pages. */ -#endif - -#include <bits/mman-shared.h> |