Update hppa bits/mman.h from Linux 4.14
Commit Message
This patch updates the hppa bits/mman.h based on Linux 4.14. Some
MADV_* macros are removed in Linux 4.14 as unused/unimplemented, so
this patch removes them from glibc, while adding two new macros added
in Linux 4.14.
Tested (compilation only) for hppa with build-many-glibcs.py.
2017-11-15 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/sysv/linux/hppa/bits/mman.h
[__USE_MISC] (MADV_SPACEAVAIL): Remove macro.
[__USE_MISC] (MADV_VPS_PURGE): Likewise.
[__USE_MISC] (MADV_VPS_INHERIT): Likewise.
[__USE_MISC] (MADV_HWPOISON): New macro.
[__USE_MISC] (MADV_SOFT_OFFLINE): Likewise.
Comments
Ping. This patch
<https://sourceware.org/ml/libc-alpha/2017-11/msg00554.html> is pending
review.
On 11/15/2017 02:59 PM, Joseph Myers wrote:
> This patch updates the hppa bits/mman.h based on Linux 4.14. Some
> MADV_* macros are removed in Linux 4.14 as unused/unimplemented, so
> this patch removes them from glibc, while adding two new macros added
> in Linux 4.14.
>
> Tested (compilation only) for hppa with build-many-glibcs.py.
>
> 2017-11-15 Joseph Myers <joseph@codesourcery.com>
>
> * sysdeps/unix/sysv/linux/hppa/bits/mman.h
> [__USE_MISC] (MADV_SPACEAVAIL): Remove macro.
> [__USE_MISC] (MADV_VPS_PURGE): Likewise.
> [__USE_MISC] (MADV_VPS_INHERIT): Likewise.
> [__USE_MISC] (MADV_HWPOISON): New macro.
> [__USE_MISC] (MADV_SOFT_OFFLINE): Likewise.
Checked against upstream. LGTM.
Reviewed-by: Carlos O'Donell <carlos@redhat.com>
> diff --git a/sysdeps/unix/sysv/linux/hppa/bits/mman.h b/sysdeps/unix/sysv/linux/hppa/bits/mman.h
> index 4ad9153..2aaca01 100644
> --- a/sysdeps/unix/sysv/linux/hppa/bits/mman.h
> +++ b/sysdeps/unix/sysv/linux/hppa/bits/mman.h
> @@ -85,9 +85,6 @@
> # 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_SPACEAVAIL 5 /* Insure that resources are reserved */
> -# define MADV_VPS_PURGE 6 /* Purge pages from VM page cache */
> -# define MADV_VPS_INHERIT 7 /* Inherit parents page size */
> # 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. */
> @@ -101,6 +98,8 @@
> # 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. */
>
@@ -85,9 +85,6 @@
# 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_SPACEAVAIL 5 /* Insure that resources are reserved */
-# define MADV_VPS_PURGE 6 /* Purge pages from VM page cache */
-# define MADV_VPS_INHERIT 7 /* Inherit parents page size */
# 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. */
@@ -101,6 +98,8 @@
# 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. */