+2016-03-15 Joseph Myers <joseph@codesourcery.com>
+
+ * sysdeps/unix/sysv/linux/kernel-features.h
+ (__ASSUME_ACCEPT4_SYSCALL): Define unconditionally.
+ (__ASSUME_ACCEPT4): Likewise.
+ [__LINUX_KERNEL_VERSION >= 0x020621] (__ASSUME_RECVMMSG_SYSCALL):
+ Define.
+ [__LINUX_KERNEL_VERSION >= 0x020621] (__ASSUME_RECVMMSG):
+ Likewise.
+ [__LINUX_KERNEL_VERSION >= 0x030000] (__ASSUME_SENDMMSG_SYSCALL):
+ Likewise.
+ [__LINUX_KERNEL_VERSION >= 0x030000] (__ASSUME_SENDMMSG):
+ Likewise.
+ * sysdeps/unix/sysv/linux/aarch64/kernel-features.h: Remove file.
+ * sysdeps/unix/sysv/linux/nios2/kernel-features.h: Likewise.
+ * sysdeps/unix/sysv/linux/alpha/kernel-features.h
+ (__ASSUME_RECVMMSG_SYSCALL): Do not define.
+ (__ASSUME_ACCEPT4_SYSCALL): Likewise.
+ (__ASSUME_SENDMMSG_SYSCALL): Likewise.
+ * sysdeps/unix/sysv/linux/arm/kernel-features.h
+ (__ASSUME_RECVMMSG_SYSCALL): Likewise.
+ (__ASSUME_ACCEPT4_SYSCALL): Likewise.
+ (__ASSUME_SENDMMSG_SYSCALL): Likewise.
+ * sysdeps/unix/sysv/linux/hppa/kernel-features.h
+ (__ASSUME_ACCEPT4_SYSCALL): Likewise.
+ (__ASSUME_RECVMMSG_SYSCALL): Likewise.
+ (__ASSUME_SENDMMSG_SYSCALL): Likewise.
+ * sysdeps/unix/sysv/linux/i386/kernel-features.h
+ [__LINUX_KERNEL_VERSION >= 0x020621] (__ASSUME_RECVMMSG_SYSCALL):
+ Likewise.
+ [__LINUX_KERNEL_VERSION >= 0x030000] (__ASSUME_SENDMMSG_SYSCALL):
+ Likewise.
+ (__ASSUME_ACCEPT4_SYSCALL): Undefine if [__LINUX_KERNEL_VERSION <
+ 0x040300] instead of defining if [__LINUX_KERNEL_VERSION >=
+ 0x040300].
+ * sysdeps/unix/sysv/linux/ia64/kernel-features.h
+ (__ASSUME_RECVMMSG_SYSCALL): Do not define.
+ (__ASSUME_SENDMMSG_SYSCALL): Likewise.
+ (__ASSUME_ACCEPT4_SYSCALL): Undefine if [__LINUX_KERNEL_VERSION <
+ 0x030300] instead of defining if [__LINUX_KERNEL_VERSION >=
+ 0x030300].
+ [__LINUX_KERNEL_VERSION < 0x030300] (__ASSUME_ACCEPT4): Undefine.
+ * sysdeps/unix/sysv/linux/m68k/kernel-features.h
+ (__ASSUME_ACCEPT4_SYSCALL): Undefine if [__LINUX_KERNEL_VERSION <
+ 0x040300] instead of defining if [__LINUX_KERNEL_VERSION >=
+ 0x040300].
+ (__ASSUME_RECVMMSG_SYSCALL): Likewise.
+ (__ASSUME_SENDMMSG_SYSCALL): Likewise.
+ * sysdeps/unix/sysv/linux/microblaze/kernel-features.h
+ (__ASSUME_ACCEPT4_SYSCALL): Do not define.
+ (__ASSUME_RECVMMSG_SYSCALL): Likewise.
+ (__ASSUME_SENDMMSG_SYSCALL): Undefine if [__LINUX_KERNEL_VERSION <
+ 0x030300] instead of defining if [__LINUX_KERNEL_VERSION >=
+ 0x030300].
+ * sysdeps/unix/sysv/linux/mips/kernel-features.h
+ (__ASSUME_ACCEPT4_SYSCALL): Do not define.
+ (__ASSUME_RECVMMSG_SYSCALL): Likewise.
+ (__ASSUME_SENDMMSG_SYSCALL): Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/kernel-features.h
+ (__ASSUME_ACCEPT4_SYSCALL): Likewise.
+ (__ASSUME_RECVMMSG_SYSCALL): Likewise.
+ (__ASSUME_SENDMMSG_SYSCALL): Likewise.
+ * sysdeps/unix/sysv/linux/s390/kernel-features.h
+ (__ASSUME_ACCEPT4_SYSCALL): Undefine if [__LINUX_KERNEL_VERSION <
+ 0x040300] instead of defining if [__LINUX_KERNEL_VERSION >=
+ 0x040300].
+ (__ASSUME_RECVMMSG_SYSCALL): Likewise.
+ (__ASSUME_SENDMMSG_SYSCALL): Likewise.
+ * sysdeps/unix/sysv/linux/sh/kernel-features.h
+ (__ASSUME_ACCEPT4_SYSCALL): Do not define.
+ (__ASSUME_RECVMMSG_SYSCALL): Likewise.
+ (__ASSUME_SENDMMSG_SYSCALL): Likewise.
+ * sysdeps/unix/sysv/linux/sparc/kernel-features.h
+ (__ASSUME_ACCEPT4_SYSCALL): Likewise.
+ (__ASSUME_RECVMMSG_SYSCALL): Likewise.
+ (__ASSUME_SENDMMSG_SYSCALL): Likewise.
+ * sysdeps/unix/sysv/linux/tile/kernel-features.h
+ (__ASSUME_ACCEPT4_SYSCALL): Likewise.
+ (__ASSUME_RECVMMSG_SYSCALL): Likewise.
+ (__ASSUME_SENDMMSG_SYSCALL): Likewise.
+ * sysdeps/unix/sysv/linux/x86_64/kernel-features.h
+ (__ASSUME_ACCEPT4_SYSCALL): Likewise.
+ [__LINUX_KERNEL_VERSION >= 0x020621] (__ASSUME_RECVMMSG_SYSCALL):
+ Likewise.
+ [__LINUX_KERNEL_VERSION >= 0x030000] (__ASSUME_SENDMMSG_SYSCALL):
+ Likewise.
+
2016-03-15 Andreas Schwab <schwab@suse.de>
[BZ #19257]
+++ /dev/null
-/* Set flags signalling availability of kernel features based on given
- kernel version number.
-
- Copyright (C) 2009-2016 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/>. */
-
-#include <linux/version.h>
-
-/* AArch64 support starts with 3.7.0, guaranteeing many kernel
- features. */
-
-#define __ASSUME_ACCEPT4_SYSCALL 1
-#define __ASSUME_RECVMMSG_SYSCALL 1
-#define __ASSUME_SENDMMSG_SYSCALL 1
-
-#include_next <kernel-features.h>
#ifndef _KERNEL_FEATURES_H
#define _KERNEL_FEATURES_H 1
-/* Support for recvmmsg was added for alpha in 2.6.33. */
-#define __ASSUME_RECVMMSG_SYSCALL 1
-
-/* Support for accept4 and sendmmsg was added for alpha in 3.2. */
-#define __ASSUME_ACCEPT4_SYSCALL 1
-#define __ASSUME_SENDMMSG_SYSCALL 1
-
#include_next <kernel-features.h>
#undef __ASSUME_ST_INO_64_BIT
License along with the GNU C Library. If not, see
<http://www.gnu.org/licenses/>. */
-/* Support for the recvmmsg syscall was added in 2.6.33. */
-#define __ASSUME_RECVMMSG_SYSCALL 1
-
-/* Support for the accept4 syscall was added in 2.6.36. */
-#define __ASSUME_ACCEPT4_SYSCALL 1
-
-/* Support for the sendmmsg syscall was added in 3.0. */
-#define __ASSUME_SENDMMSG_SYSCALL 1
-
#include_next <kernel-features.h>
/* The ARM kernel before 3.14.3 may or may not support
<http://www.gnu.org/licenses/>. */
-/* Support for the accept4 and recvmmsg syscalls was added in 2.6.34. */
-#define __ASSUME_ACCEPT4_SYSCALL 1
-#define __ASSUME_RECVMMSG_SYSCALL 1
-
-/* Support for the sendmmsg syscall was added in 3.1. */
-#define __ASSUME_SENDMMSG_SYSCALL 1
-
/* Support for the utimes syscall was added in 3.14. */
#if __LINUX_KERNEL_VERSION >= 0x030e00
# define __ASSUME_UTIMES 1
#define __ASSUME_SOCKETCALL 1
/* The recvmmsg syscall was added for i386 in 2.6.33. */
-#if __LINUX_KERNEL_VERSION >= 0x020621
-# define __ASSUME_RECVMMSG_SYSCALL 1
-#endif
#define __ASSUME_RECVMMSG_SYSCALL_WITH_SOCKETCALL 1
/* The sendmmsg syscall was added for i386 in 3.0. */
-#if __LINUX_KERNEL_VERSION >= 0x030000
-# define __ASSUME_SENDMMSG_SYSCALL 1
-#endif
#define __ASSUME_SENDMMSG_SYSCALL_WITH_SOCKETCALL 1
/* Direct socketcalls available with kernel 4.3. */
# define __ASSUME_BIND_SYSCALL 1
# define __ASSUME_CONNECT_SYSCALL 1
# define __ASSUME_LISTEN_SYSCALL 1
-# define __ASSUME_ACCEPT4_SYSCALL 1
# define __ASSUME_ACCEPT4_FOR_ACCEPT_SYSCALL 1
# define __ASSUME_GETSOCKOPT_SYSCALL 1
# define __ASSUME_SETSOCKOPT_SYSCALL 1
#endif
#include_next <kernel-features.h>
+
+#if __LINUX_KERNEL_VERSION < 0x040300
+# undef __ASSUME_ACCEPT4_SYSCALL
+#endif
#ifndef _KERNEL_FEATURES_H
#define _KERNEL_FEATURES_H 1
-/* Support for the recvmmsg syscall was added in 2.6.33. */
-#define __ASSUME_RECVMMSG_SYSCALL 1
-
-/* Support for the sendmmsg syscall was added in 3.0. */
-#define __ASSUME_SENDMMSG_SYSCALL 1
+#include_next <kernel-features.h>
/* Support for the accept4 syscall was added in 3.3. */
-#if __LINUX_KERNEL_VERSION >= 0x030300
-# define __ASSUME_ACCEPT4_SYSCALL 1
+#if __LINUX_KERNEL_VERSION < 0x030300
+# undef __ASSUME_ACCEPT4_SYSCALL
+# undef __ASSUME_ACCEPT4
#endif
-#include_next <kernel-features.h>
-
#endif /* _KERNEL_FEATURES_H */
#ifdef __ASSUME_SOCKETCALL
# define __ASSUME_ACCEPT4_SOCKETCALL 1
#endif
-
-#if defined __ASSUME_ACCEPT4_SOCKETCALL || defined __ASSUME_ACCEPT4_SYSCALL
-# define __ASSUME_ACCEPT4 1
-#endif
+#define __ASSUME_ACCEPT4_SYSCALL 1
+#define __ASSUME_ACCEPT4 1
/* Support for the FUTEX_CLOCK_REALTIME flag was added in 2.6.29. */
#define __ASSUME_FUTEX_CLOCK_REALTIME 1
/* Support for recvmmsg functionality was added in 2.6.33. The macros
defined correspond to those for accept4. */
-#if __LINUX_KERNEL_VERSION >= 0x020621 && defined __ASSUME_SOCKETCALL
-# define __ASSUME_RECVMMSG_SOCKETCALL 1
-#endif
-
-#if defined __ASSUME_RECVMMSG_SOCKETCALL || defined __ASSUME_RECVMMSG_SYSCALL
+#if __LINUX_KERNEL_VERSION >= 0x020621
+# ifdef __ASSUME_SOCKETCALL
+# define __ASSUME_RECVMMSG_SOCKETCALL 1
+# endif
+# define __ASSUME_RECVMMSG_SYSCALL 1
# define __ASSUME_RECVMMSG 1
#endif
/* Support for sendmmsg functionality was added in 3.0. The macros
defined correspond to those for accept4 and recvmmsg. */
-#if __LINUX_KERNEL_VERSION >= 0x030000 && defined __ASSUME_SOCKETCALL
-# define __ASSUME_SENDMMSG_SOCKETCALL 1
-#endif
-
-#if defined __ASSUME_SENDMMSG_SOCKETCALL || defined __ASSUME_SENDMMSG_SYSCALL
+#if __LINUX_KERNEL_VERSION >= 0x030000
+# ifdef __ASSUME_SOCKETCALL
+# define __ASSUME_SENDMMSG_SOCKETCALL 1
+# endif
+# define __ASSUME_SENDMMSG_SYSCALL 1
# define __ASSUME_SENDMMSG 1
#endif
/* Direct socketcalls available with kernel 4.3. */
#if __LINUX_KERNEL_VERSION >= 0x040300
-# define __ASSUME_RECVMMSG_SYSCALL 1
-# define __ASSUME_SENDMMSG_SYSCALL 1
# define __ASSUME_SOCKET_SYSCALL 1
# define __ASSUME_SOCKETPAIR_SYSCALL 1
# define __ASSUME_BIND_SYSCALL 1
# define __ASSUME_CONNECT_SYSCALL 1
# define __ASSUME_LISTEN_SYSCALL 1
-# define __ASSUME_ACCEPT4_SYSCALL 1
# define __ASSUME_ACCEPT4_FOR_ACCEPT_SYSCALL 1
# define __ASSUME_GETSOCKOPT_SYSCALL 1
# define __ASSUME_SETSOCKOPT_SYSCALL 1
#include_next <kernel-features.h>
+#if __LINUX_KERNEL_VERSION < 0x040300
+# undef __ASSUME_ACCEPT4_SYSCALL
+# undef __ASSUME_RECVMMSG_SYSCALL
+# undef __ASSUME_SENDMMSG_SYSCALL
+#endif
+
/* No support for PI futexes or robust mutexes before 3.10 for m68k. */
#if __LINUX_KERNEL_VERSION < 0x030a00
# undef __ASSUME_FUTEX_LOCK_PI
#define __ASSUME_RECVMSG_SYSCALL 1
/* Support for the accept4 and recvmmsg syscalls was added in 2.6.33. */
-#define __ASSUME_ACCEPT4_SYSCALL 1
-#define __ASSUME_RECVMMSG_SYSCALL 1
#define __ASSUME_RECVMMSG_SYSCALL_WITH_SOCKETCALL 1
-/* Support for the sendmmsg syscall was added in 3.3. */
-#if __LINUX_KERNEL_VERSION >= 0x030300
-# define __ASSUME_SENDMMSG_SYSCALL 1
-#endif
-
/* Support for the futimesat syscall was added in 2.6.33. */
#define __ASSUME_FUTIMESAT 1
# undef __ASSUME_PREADV
# undef __ASSUME_PWRITEV
#endif
+
+/* Support for the sendmmsg syscall was added in 3.3. */
+#if __LINUX_KERNEL_VERSION < 0x030300
+# undef __ASSUME_SENDMMSG_SYSCALL
+#endif
#include <sgidefs.h>
-/* Support for the accept4 syscall was added in 2.6.31. */
-#define __ASSUME_ACCEPT4_SYSCALL 1
-
-/* Support for the recvmmsg syscall was added in 2.6.33. */
-#define __ASSUME_RECVMMSG_SYSCALL 1
-
-/* Support for the sendmmsg syscall was added in 3.1. */
-#define __ASSUME_SENDMMSG_SYSCALL 1
-
#include_next <kernel-features.h>
/* The MIPS kernel does not support futex_atomic_cmpxchg_inatomic if
+++ /dev/null
-/* Set flags signalling availability of kernel features based on given
- kernel version number.
-
- Copyright (C) 2009-2016 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/>. */
-
-#include <linux/version.h>
-
-/* The minimum supported kernel version for Nios II is 3.19.0,
- guaranteeing many kernel features. */
-
-#define __ASSUME_ACCEPT4_SYSCALL 1
-#define __ASSUME_RECVMMSG_SYSCALL 1
-#define __ASSUME_SENDMMSG_SYSCALL 1
-
-#include_next <kernel-features.h>
/* PowerPC uses socketcall. */
#define __ASSUME_SOCKETCALL 1
-/* The accept4 syscall was added for PowerPC in 2.6.37. */
-#define __ASSUME_ACCEPT4_SYSCALL 1
-
-/* The recvmmsg syscall was added for PowerPC in 2.6.37. */
-#define __ASSUME_RECVMMSG_SYSCALL 1
-
/* New syscalls added for PowerPC in 2.6.37. */
#define __ASSUME_SOCKET_SYSCALL 1
#define __ASSUME_BIND_SYSCALL 1
#define __ASSUME_RECVMSG_SYSCALL 1
/* The sendmmsg syscall was added for PowerPC in 3.0. */
-#define __ASSUME_SENDMMSG_SYSCALL 1
#define __ASSUME_SENDMMSG_SYSCALL_WITH_SOCKETCALL 1
#include_next <kernel-features.h>
/* Direct socketcalls available with kernel 4.3. */
#if __LINUX_KERNEL_VERSION >= 0x040300
-# define __ASSUME_RECVMMSG_SYSCALL 1
-# define __ASSUME_SENDMMSG_SYSCALL 1
# define __ASSUME_SOCKET_SYSCALL 1
# define __ASSUME_SOCKETPAIR_SYSCALL 1
# define __ASSUME_BIND_SYSCALL 1
# define __ASSUME_CONNECT_SYSCALL 1
# define __ASSUME_LISTEN_SYSCALL 1
-# define __ASSUME_ACCEPT4_SYSCALL 1
# define __ASSUME_ACCEPT4_FOR_ACCEPT_SYSCALL 1
# define __ASSUME_GETSOCKOPT_SYSCALL 1
# define __ASSUME_SETSOCKOPT_SYSCALL 1
#endif
#include_next <kernel-features.h>
+
+#if __LINUX_KERNEL_VERSION < 0x040300
+# undef __ASSUME_ACCEPT4_SYSCALL
+# undef __ASSUME_RECVMMSG_SYSCALL
+# undef __ASSUME_SENDMMSG_SYSCALL
+#endif
#define __ASSUME_SENDMSG_SYSCALL 1
#define __ASSUME_RECVMSG_SYSCALL 1
-/* The accept4 syscall was added for SH in 2.6.37. */
-#define __ASSUME_ACCEPT4_SYSCALL 1
-
-/* The recvmmsg syscall was added for SH in 2.6.37. */
-#define __ASSUME_RECVMMSG_SYSCALL 1
-
/* The sendmmsg syscall was added for SH in 3.0. */
-#define __ASSUME_SENDMMSG_SYSCALL 1
#define __ASSUME_SENDMMSG_SYSCALL_WITH_SOCKETCALL 1
#include_next <kernel-features.h>
#define __ASSUME_SOCKETCALL 1
/* The accept4 syscall was added for SPARC in 2.6.28. */
-#define __ASSUME_ACCEPT4_SYSCALL 1
#define __ASSUME_ACCEPT4_SYSCALL_WITH_SOCKETCALL 1
/* The recvmmsg syscall was added for SPARC in 2.6.33. */
-#define __ASSUME_RECVMMSG_SYSCALL 1
#define __ASSUME_RECVMMSG_SYSCALL_WITH_SOCKETCALL 1
/* The sendmmsg syscall was added for SPARC in 3.0. */
-#define __ASSUME_SENDMMSG_SYSCALL 1
#define __ASSUME_SENDMMSG_SYSCALL_WITH_SOCKETCALL 1
#include_next <kernel-features.h>
<http://www.gnu.org/licenses/>. */
-/* TILE glibc support starts with 2.6.36, guaranteeing many kernel features. */
-#define __ASSUME_ACCEPT4_SYSCALL 1
-#define __ASSUME_RECVMMSG_SYSCALL 1
-
-/* Support for the sendmmsg syscall was added in 3.0. */
-#define __ASSUME_SENDMMSG_SYSCALL 1
-
#include_next <kernel-features.h>
/* Define this if your 32-bit syscall API requires 64-bit register
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-/* The accept4 syscall was added for x86-64 in 2.6.28. */
-#define __ASSUME_ACCEPT4_SYSCALL 1
-
-/* The recvmmsg syscall was added for x86-64 in 2.6.33. */
-#if __LINUX_KERNEL_VERSION >= 0x020621
-# define __ASSUME_RECVMMSG_SYSCALL 1
-#endif
-
-/* The sendmmsg syscall was added for x86-64 in 3.0. */
-#if __LINUX_KERNEL_VERSION >= 0x030000
-# define __ASSUME_SENDMMSG_SYSCALL 1
-#endif
-
/* getcpu is a syscall for x86-64 since 3.1. */
#if __LINUX_KERNEL_VERSION >= 0x030100
# define __ASSUME_GETCPU_SYSCALL 1