diff --git a/ChangeLog b/ChangeLog index 8f9bac2565..4c865ab43f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,55 @@ 2018-10-04 Joseph Myers + * sysdeps/unix/sysv/linux/hppa/bits/mman.h: Include + . + (PROT_READ): Don't define here. + (PROT_WRITE): Likewise. + (PROT_EXEC): Likewise. + (PROT_NONE): Likewise. + (PROT_GROWSDOWN): Likewise. + (PROT_GROWSUP): Likewise. + (MAP_SHARED): Likewise. + (MAP_PRIVATE): Likewise. + [__USE_MISC] (MAP_SHARED_VALIDATE): Likewise. + [__USE_MISC] (MAP_FILE): Likewise. + [__USE_MISC] (MAP_ANONYMOUS): Likewise. + [__USE_MISC] (MAP_ANON): Likewise. + [__USE_MISC] (MAP_HUGE_SHIFT): Likewise. + [__USE_MISC] (MAP_HUGE_MASK): Likewise. + (MCL_CURRENT): Likewise. + (MCL_FUTURE): Likewise. + (MCL_ONFAULT): Likewise. + [__USE_MISC] (MADV_NORMAL): Likewise. + [__USE_MISC] (MADV_RANDOM): Likewise. + [__USE_MISC] (MADV_SEQUENTIAL): Likewise. + [__USE_MISC] (MADV_WILLNEED): Likewise. + [__USE_MISC] (MADV_DONTNEED): Likewise. + [__USE_MISC] (MADV_FREE): Likewise. + [__USE_MISC] (MADV_REMOVE): Likewise. + [__USE_MISC] (MADV_DONTFORK): Likewise. + [__USE_MISC] (MADV_DOFORK): Likewise. + [__USE_MISC] (MADV_HWPOISON): Likewise. + [__USE_XOPEN2K] (POSIX_MADV_NORMAL): Likewise. + [__USE_XOPEN2K] (POSIX_MADV_RANDOM): Likewise. + [__USE_XOPEN2K] (POSIX_MADV_SEQUENTIAL): Likewise. + [__USE_XOPEN2K] (POSIX_MADV_WILLNEED): Likewise. + [__USE_XOPEN2K] (POSIX_MADV_DONTNEED): Likewise. + (__MAP_ANONYMOUS): New macro. + [__USE_MISC] (MAP_TYPE): Undefine and redefine after + inclusion. + (MAP_FIXED): Likewise. + (MS_SYNC): Likewise. + (MS_ASYNC): Likewise. + (MS_INVALIDATE): Likewise. + [__USE_MISC] (MADV_MERGEABLE): Likewise. + [__USE_MISC] (MADV_UNMERGEABLE): Likewise. + [__USE_MISC] (MADV_HUGEPAGE): Likewise. + [__USE_MISC] (MADV_NOHUGEPAGE): Likewise. + [__USE_MISC] (MADV_DONTDUMP): Likewise. + [__USE_MISC] (MADV_DODUMP): Likewise. + [__USE_MISC] (MADV_WIPEONFORK): Likewise. + [__USE_MISC] (MADV_KEEPONFORK): Likewise. + [BZ #23735] * sysdeps/ieee754/ldbl-opt/nldbl-compat.h (NO_MATH_REDIRECT): Define. 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 -/* Flags to "msync" */ -#define MS_SYNC 1 /* Synchronous memory sync */ -#define MS_ASYNC 2 /* Sync memory asynchronously */ -#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. */ -# define MADV_MERGEABLE 65 /* KSM may merge identical pages */ -# define MADV_UNMERGEABLE 66 /* KSM may not merge identical pages */ -# define MADV_HUGEPAGE 67 /* Worth backing with hugepages */ -# define MADV_NOHUGEPAGE 68 /* Not worth backing with hugepages */ -# define MADV_DONTDUMP 69 /* Explicity exclude from the core dump, - overrides the coredump filter bits */ -# define MADV_DODUMP 70 /* Clear the MADV_NODUMP flag */ -# define MADV_WIPEONFORK 71 /* Zero memory on fork, child only. */ -# 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. */ +#include + +#ifdef __USE_MISC +# undef MAP_TYPE +# define MAP_TYPE 0x2b /* Mask for type of mapping */ #endif -#include +#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 */ + +/* Advice to "madvise" */ +#ifdef __USE_MISC +# 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. */ +#endif