This is the mail archive of the
glibc-cvs@sourceware.org
mailing list for the glibc project.
GNU C Library master sources branch master updated. glibc-2.28.9000-159-g61d8b5f
- From: jsm28 at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 26 Sep 2018 12:33:43 -0000
- Subject: GNU C Library master sources branch master updated. glibc-2.28.9000-159-g61d8b5f
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".
The branch, master has been updated
via 61d8b5feeed36e242a043befe9b11f7f8c294f58 (commit)
from 4634128642f47da6542a4b73f8ff770d6b0765e5 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=61d8b5feeed36e242a043befe9b11f7f8c294f58
commit 61d8b5feeed36e242a043befe9b11f7f8c294f58
Author: Joseph Myers <joseph@codesourcery.com>
Date: Wed Sep 26 12:33:14 2018 +0000
Share MAP_* flags between more architectures.
Continuing bits/mman.h unification between architectures using the
Linux kernel, this patch arranges for the common set of MAP_* flags to
be used by two more architectures. That common set is moved to
bits/mman-map-flags-generic.h, which is included by bits/mman.h, to
allow architectures to use that common set even if they also have
architecture-specific additions to it. As well as the generic
bits/mman.h, the versions for x86 and ia64 are also then made to
include bits/mman-map-flags-generic.h, so while they still need
architecture-specific bits/mman.h (for MAP_32BIT and MAP_GROWSUP
respectively), they do not need to duplicate the generic flag
definitions in there.
Tested for x86_64 and x86, and with build-many-glibcs.py.
* sysdeps/unix/sysv/linux/bits/mman-map-flags-generic.h: New
file. Most contents moved from ....
* sysdeps/unix/sysv/linux/bits/mman.h: ... here. Move contents to
and include <bits/mman-map-flags-generic.h>.
* sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
(sysdep_headers): Add bits/mman-map-flags-generic.h.
* sysdeps/unix/sysv/linux/ia64/bits/mman.h: Include
<bits/mman-map-flags-generic.h>.
[__USE_MISC] (MAP_GROWSUP): Only define this macro, not other
macros defined in <bits/mman-map-flags-generic.h>.
* sysdeps/unix/sysv/linux/x86/bits/mman.h: Include
<bits/mman-map-flags-generic.h>.
[__USE_MISC] (MAP_32BIT): Only define this macro, not other macros
defined in <bits/mman-map-flags-generic.h>.
diff --git a/ChangeLog b/ChangeLog
index 844d081..b757651 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,20 @@
+2018-09-26 Joseph Myers <joseph@codesourcery.com>
+
+ * sysdeps/unix/sysv/linux/bits/mman-map-flags-generic.h: New
+ file. Most contents moved from ....
+ * sysdeps/unix/sysv/linux/bits/mman.h: ... here. Move contents to
+ and include <bits/mman-map-flags-generic.h>.
+ * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
+ (sysdep_headers): Add bits/mman-map-flags-generic.h.
+ * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Include
+ <bits/mman-map-flags-generic.h>.
+ [__USE_MISC] (MAP_GROWSUP): Only define this macro, not other
+ macros defined in <bits/mman-map-flags-generic.h>.
+ * sysdeps/unix/sysv/linux/x86/bits/mman.h: Include
+ <bits/mman-map-flags-generic.h>.
+ [__USE_MISC] (MAP_32BIT): Only define this macro, not other macros
+ defined in <bits/mman-map-flags-generic.h>.
+
2018-09-26 Andreas Schwab <schwab@suse.de>
* Makefile ($(common-objpfx)testrun.sh): Remove leading space from
diff --git a/sysdeps/unix/sysv/linux/Makefile b/sysdeps/unix/sysv/linux/Makefile
index 99d71ea..d047b61 100644
--- a/sysdeps/unix/sysv/linux/Makefile
+++ b/sysdeps/unix/sysv/linux/Makefile
@@ -42,7 +42,7 @@ sysdep_headers += sys/mount.h sys/acct.h sys/sysctl.h \
bits/mman-linux.h bits/mman-shared.h bits/ptrace-shared.h \
bits/siginfo-arch.h bits/siginfo-consts-arch.h \
bits/procfs.h bits/procfs-id.h bits/procfs-extra.h \
- bits/procfs-prregset.h
+ bits/procfs-prregset.h bits/mman-map-flags-generic.h
tests += tst-clone tst-clone2 tst-clone3 tst-fanotify tst-personality \
tst-quota tst-sync_file_range tst-sysconf-iov_max tst-ttyname \
diff --git a/sysdeps/unix/sysv/linux/bits/mman.h b/sysdeps/unix/sysv/linux/bits/mman-map-flags-generic.h
similarity index 88%
copy from sysdeps/unix/sysv/linux/bits/mman.h
copy to sysdeps/unix/sysv/linux/bits/mman-map-flags-generic.h
index e98b520..3605843 100644
--- a/sysdeps/unix/sysv/linux/bits/mman.h
+++ b/sysdeps/unix/sysv/linux/bits/mman-map-flags-generic.h
@@ -17,13 +17,13 @@
<http://www.gnu.org/licenses/>. */
#ifndef _SYS_MMAN_H
-# error "Never use <bits/mman.h> directly; include <sys/mman.h> instead."
+# error "Never use <bits/mman-map-flags-generic.h> directly; include <sys/mman.h> instead."
#endif
/* These definitions are appropriate for architectures that, in the
Linux kernel, either have no uapi/asm/mman.h, or have one that
- includes asm-generic/mman.h without any changes or additions
- relevant to glibc. */
+ includes asm-generic/mman.h without any changes to the values of
+ the MAP_* flags defined in that header. */
#ifdef __USE_MISC
# define MAP_GROWSDOWN 0x00100 /* Stack-like segment. */
@@ -40,6 +40,3 @@
# define MAP_FIXED_NOREPLACE 0x100000 /* MAP_FIXED but do not unmap
underlying mapping. */
#endif
-
-/* Include generic Linux declarations. */
-#include <bits/mman-linux.h>
diff --git a/sysdeps/unix/sysv/linux/bits/mman.h b/sysdeps/unix/sysv/linux/bits/mman.h
index e98b520..178a8ed 100644
--- a/sysdeps/unix/sysv/linux/bits/mman.h
+++ b/sysdeps/unix/sysv/linux/bits/mman.h
@@ -23,23 +23,10 @@
/* These definitions are appropriate for architectures that, in the
Linux kernel, either have no uapi/asm/mman.h, or have one that
includes asm-generic/mman.h without any changes or additions
- relevant to glibc. */
+ relevant to glibc. If there are additions relevant to glibc, an
+ architecture-specific bits/mman.h is needed. */
-#ifdef __USE_MISC
-# define MAP_GROWSDOWN 0x00100 /* Stack-like segment. */
-# define MAP_DENYWRITE 0x00800 /* ETXTBSY. */
-# define MAP_EXECUTABLE 0x01000 /* Mark it as an executable. */
-# define MAP_LOCKED 0x02000 /* Lock the mapping. */
-# define MAP_NORESERVE 0x04000 /* Don't check for reservations. */
-# define MAP_POPULATE 0x08000 /* Populate (prefault) pagetables. */
-# define MAP_NONBLOCK 0x10000 /* Do not block on IO. */
-# define MAP_STACK 0x20000 /* Allocation is for a stack. */
-# define MAP_HUGETLB 0x40000 /* Create huge page mapping. */
-# define MAP_SYNC 0x80000 /* Perform synchronous page
- faults for the mapping. */
-# define MAP_FIXED_NOREPLACE 0x100000 /* MAP_FIXED but do not unmap
- underlying mapping. */
-#endif
+#include <bits/mman-map-flags-generic.h>
/* Include generic Linux declarations. */
#include <bits/mman-linux.h>
diff --git a/sysdeps/unix/sysv/linux/ia64/bits/mman.h b/sysdeps/unix/sysv/linux/ia64/bits/mman.h
index 51071fd..a1f649c 100644
--- a/sysdeps/unix/sysv/linux/ia64/bits/mman.h
+++ b/sysdeps/unix/sysv/linux/ia64/bits/mman.h
@@ -25,21 +25,10 @@
/* These are Linux-specific. */
#ifdef __USE_MISC
-# define MAP_GROWSDOWN 0x00100 /* Stack-like segment. */
# define MAP_GROWSUP 0x00200 /* Register stack-like segment */
-# define MAP_DENYWRITE 0x00800 /* ETXTBSY */
-# define MAP_EXECUTABLE 0x01000 /* Mark it as an executable. */
-# define MAP_LOCKED 0x02000 /* Lock the mapping. */
-# define MAP_NORESERVE 0x04000 /* Don't check for reservations. */
-# define MAP_POPULATE 0x08000 /* Populate (prefault) pagetables. */
-# define MAP_NONBLOCK 0x10000 /* Do not block on IO. */
-# define MAP_STACK 0x20000 /* Allocation is for a stack. */
-# define MAP_HUGETLB 0x40000 /* Create huge page mapping. */
-# define MAP_SYNC 0x80000 /* Perform synchronous page
- faults for the mapping. */
-# define MAP_FIXED_NOREPLACE 0x100000 /* MAP_FIXED but do not unmap
- underlying mapping. */
#endif
+#include <bits/mman-map-flags-generic.h>
+
/* Include generic Linux declarations. */
#include <bits/mman-linux.h>
diff --git a/sysdeps/unix/sysv/linux/x86/bits/mman.h b/sysdeps/unix/sysv/linux/x86/bits/mman.h
index d897b8a..b1d9cbd 100644
--- a/sysdeps/unix/sysv/linux/x86/bits/mman.h
+++ b/sysdeps/unix/sysv/linux/x86/bits/mman.h
@@ -28,22 +28,7 @@
# define MAP_32BIT 0x40 /* Only give out 32-bit addresses. */
#endif
-/* These are Linux-specific. */
-#ifdef __USE_MISC
-# define MAP_GROWSDOWN 0x00100 /* Stack-like segment. */
-# define MAP_DENYWRITE 0x00800 /* ETXTBSY */
-# define MAP_EXECUTABLE 0x01000 /* Mark it as an executable. */
-# define MAP_LOCKED 0x02000 /* Lock the mapping. */
-# define MAP_NORESERVE 0x04000 /* Don't check for reservations. */
-# define MAP_POPULATE 0x08000 /* Populate (prefault) pagetables. */
-# define MAP_NONBLOCK 0x10000 /* Do not block on IO. */
-# define MAP_STACK 0x20000 /* Allocation is for a stack. */
-# define MAP_HUGETLB 0x40000 /* Create huge page mapping. */
-# define MAP_SYNC 0x80000 /* Perform synchronous page
- faults for the mapping. */
-# define MAP_FIXED_NOREPLACE 0x100000 /* MAP_FIXED but do not unmap
- underlying mapping. */
-#endif
+#include <bits/mman-map-flags-generic.h>
/* Include generic Linux declarations. */
#include <bits/mman-linux.h>
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 17 +++++++++++++++++
sysdeps/unix/sysv/linux/Makefile | 2 +-
.../bits/{mman.h => mman-map-flags-generic.h} | 9 +++------
sysdeps/unix/sysv/linux/bits/mman.h | 19 +++----------------
sysdeps/unix/sysv/linux/ia64/bits/mman.h | 15 ++-------------
sysdeps/unix/sysv/linux/x86/bits/mman.h | 17 +----------------
6 files changed, 27 insertions(+), 52 deletions(-)
copy sysdeps/unix/sysv/linux/bits/{mman.h => mman-map-flags-generic.h} (88%)
hooks/post-receive
--
GNU C Library master sources