mirror of
https://sourceware.org/git/glibc.git
synced 2025-07-29 11:41:21 +03:00
Linux: Introduce <bits/mman-shared.h>
This header file enables sharing of portable declarations and definitions across all Linux architectures, including hppa (which does not use <bits/mman-linux.h>). Reviewed-by: Carlos O'Donell <carlos@redhat.com>
This commit is contained in:
13
ChangeLog
13
ChangeLog
@ -1,3 +1,16 @@
|
|||||||
|
2017-11-24 Florian Weimer <fweimer@redhat.com>
|
||||||
|
|
||||||
|
* sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add
|
||||||
|
bits/mman-shared.h.
|
||||||
|
* sysdeps/unix/sysv/linux/bits/mman-linux.h: Include
|
||||||
|
<bits/mman-shared.h>.
|
||||||
|
(MFD_CLOEXEC, MFD_ALLOW_SEALING, MFD_HUGETLB, memfd_create): Move
|
||||||
|
to ...
|
||||||
|
* sysdeps/unix/sysv/linux/bits/mman-shared.h: ... this new file.
|
||||||
|
Add #ifndef guard for the MFD_* constants based on MFD_CLOEXEC.
|
||||||
|
* sysdeps/unix/sysv/linux/hppa/bits/mman.h: Include
|
||||||
|
<bits/mman-shared.h>.
|
||||||
|
|
||||||
2017-11-24 Adhemerval Zanella <adhemerval.zanella@linaro.org>
|
2017-11-24 Adhemerval Zanella <adhemerval.zanella@linaro.org>
|
||||||
|
|
||||||
[BZ #22457]
|
[BZ #22457]
|
||||||
|
@ -39,7 +39,7 @@ sysdep_headers += sys/mount.h sys/acct.h sys/sysctl.h \
|
|||||||
sys/timerfd.h sys/fanotify.h bits/eventfd.h bits/inotify.h \
|
sys/timerfd.h sys/fanotify.h bits/eventfd.h bits/inotify.h \
|
||||||
bits/signalfd.h bits/timerfd.h bits/epoll.h \
|
bits/signalfd.h bits/timerfd.h bits/epoll.h \
|
||||||
bits/socket_type.h bits/syscall.h bits/sysctl.h \
|
bits/socket_type.h bits/syscall.h bits/sysctl.h \
|
||||||
bits/mman-linux.h \
|
bits/mman-linux.h bits/mman-shared.h \
|
||||||
bits/siginfo-arch.h bits/siginfo-consts-arch.h
|
bits/siginfo-arch.h bits/siginfo-consts-arch.h
|
||||||
|
|
||||||
tests += tst-clone tst-clone2 tst-clone3 tst-fanotify tst-personality \
|
tests += tst-clone tst-clone2 tst-clone3 tst-fanotify tst-personality \
|
||||||
|
@ -112,18 +112,4 @@
|
|||||||
faulted in. */
|
faulted in. */
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef __USE_GNU
|
#include <bits/mman-shared.h>
|
||||||
/* Flags for memfd_create. */
|
|
||||||
# define MFD_CLOEXEC 1U
|
|
||||||
# define MFD_ALLOW_SEALING 2U
|
|
||||||
# define MFD_HUGETLB 4U
|
|
||||||
|
|
||||||
__BEGIN_DECLS
|
|
||||||
|
|
||||||
/* Create a new memory file descriptor. NAME is a name for debugging.
|
|
||||||
FLAGS is a combination of the MFD_* constants. */
|
|
||||||
int memfd_create (const char *__name, unsigned int __flags) __THROW;
|
|
||||||
|
|
||||||
__END_DECLS
|
|
||||||
|
|
||||||
#endif /* __USE_GNU */
|
|
||||||
|
39
sysdeps/unix/sysv/linux/bits/mman-shared.h
Normal file
39
sysdeps/unix/sysv/linux/bits/mman-shared.h
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
/* Memory-mapping-related declarations/definitions, not architecture-specific.
|
||||||
|
Copyright (C) 2017 Free Software Foundation, Inc.
|
||||||
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
modify it under the terms of the GNU Lesser General Public
|
||||||
|
License as published by the Free Software Foundation; either
|
||||||
|
version 2.1 of the License, or (at your option) any later version.
|
||||||
|
|
||||||
|
The GNU C Library is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Lesser General Public
|
||||||
|
License along with the GNU C Library; if not, see
|
||||||
|
<http://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
|
#ifndef _SYS_MMAN_H
|
||||||
|
# error "Never use <bits/mman-shared.h> directly; include <sys/mman.h> instead."
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef __USE_GNU
|
||||||
|
/* Flags for memfd_create. */
|
||||||
|
# ifndef MFD_CLOEXEC
|
||||||
|
# define MFD_CLOEXEC 1U
|
||||||
|
# define MFD_ALLOW_SEALING 2U
|
||||||
|
# define MFD_HUGETLB 4U
|
||||||
|
# endif
|
||||||
|
|
||||||
|
__BEGIN_DECLS
|
||||||
|
|
||||||
|
/* Create a new memory file descriptor. NAME is a name for debugging.
|
||||||
|
FLAGS is a combination of the MFD_* constants. */
|
||||||
|
int memfd_create (const char *__name, unsigned int __flags) __THROW;
|
||||||
|
|
||||||
|
__END_DECLS
|
||||||
|
|
||||||
|
#endif /* __USE_GNU */
|
@ -110,3 +110,5 @@
|
|||||||
# define POSIX_MADV_WILLNEED 3 /* Will need these pages. */
|
# define POSIX_MADV_WILLNEED 3 /* Will need these pages. */
|
||||||
# define POSIX_MADV_DONTNEED 4 /* Don't need these pages. */
|
# define POSIX_MADV_DONTNEED 4 /* Don't need these pages. */
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#include <bits/mman-shared.h>
|
||||||
|
Reference in New Issue
Block a user