]> sourceware.org Git - glibc.git/commitdiff
Adjust kernel-features.h defaults for socket syscalls.
authorJoseph Myers <joseph@codesourcery.com>
Tue, 15 Mar 2016 21:09:33 +0000 (21:09 +0000)
committerJoseph Myers <joseph@codesourcery.com>
Tue, 15 Mar 2016 21:09:33 +0000 (21:09 +0000)
This patch adjusts the defaults for kernel-features.h macros relating
to availability of accept4, recvmmsg and sendmmsg.  It is not intended
to affect which macros end up getting defined in any configuration.

At present, all architectures with syscalls for those functions need
to define __ASSUME_*_SYSCALL macros; in particular, any new
architecture needs its own kernel-features.h file for that purpose,
though it may not otherwise need such a header.  Those macros are then
used together with __ASSUME_SOCKETCALL to define macros for whether
the functions in question are available.

This patch changes the defaults so that the syscalls are assumed to be
available by default with recent-enough kernels, and it is the
responsibility of architecture headers to undefine the macros if they
are unavailable in supported kernels at least as recent as the version
where the architecture-independent functionality was introduced.  The
__ASSUME_<function> macros are defaulted similarly instead of being
defined based on other macros (defining based on other macros would no
longer work because the #undefs appear after the generic header is
included), so where the syscall being unavailable means the function
is unavailable this means the architecture header has to undefine the
__ASSUME_<function> macro; this only affects __ASSUME_ACCEPT4 for
ia64, as other cases where the syscalls were added late enough to be
relevant with current kernel version requirements are all on
socketcall architectures.

As a consequence, the AArch64 and Nios II kernel-features.h header
files are removed, and others simplified.  When the minimum kernel
version becomes 4.3 or later on all architectures, the syscalls in
question can just be assumed unconditionally, permitting further
simplification.

Tested for x86_64, x86 and powerpc (that installed shared libraries
are unchanged by the patch, and testsuite for x86_64 and x86).

* 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.

18 files changed:
ChangeLog
sysdeps/unix/sysv/linux/aarch64/kernel-features.h [deleted file]
sysdeps/unix/sysv/linux/alpha/kernel-features.h
sysdeps/unix/sysv/linux/arm/kernel-features.h
sysdeps/unix/sysv/linux/hppa/kernel-features.h
sysdeps/unix/sysv/linux/i386/kernel-features.h
sysdeps/unix/sysv/linux/ia64/kernel-features.h
sysdeps/unix/sysv/linux/kernel-features.h
sysdeps/unix/sysv/linux/m68k/kernel-features.h
sysdeps/unix/sysv/linux/microblaze/kernel-features.h
sysdeps/unix/sysv/linux/mips/kernel-features.h
sysdeps/unix/sysv/linux/nios2/kernel-features.h [deleted file]
sysdeps/unix/sysv/linux/powerpc/kernel-features.h
sysdeps/unix/sysv/linux/s390/kernel-features.h
sysdeps/unix/sysv/linux/sh/kernel-features.h
sysdeps/unix/sysv/linux/sparc/kernel-features.h
sysdeps/unix/sysv/linux/tile/kernel-features.h
sysdeps/unix/sysv/linux/x86_64/kernel-features.h

index a38c643f41d15e8e02d768bc83ebe2b9dd06e4cf..251a8dd87a5c35059b5d4871cfed40d31231783a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,90 @@
+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]
diff --git a/sysdeps/unix/sysv/linux/aarch64/kernel-features.h b/sysdeps/unix/sysv/linux/aarch64/kernel-features.h
deleted file mode 100644 (file)
index 556ba73..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-/* 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>
index d7a29db4614aa554f74b55f7b7f34b3ed32d1097..732749e845dba45ee98459a7c0a85808d99d3ad5 100644 (file)
 #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
index a97d4e23df6a75c6900f4146039a45f8355c9927..c04c4e2a02dd8901f88dbf85074efa937d1cb7e7 100644 (file)
    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
index d0b489371ed5791acb6c6b77450b449cbd8ed9d2..f86102731158ebd9a3a1e697dfa7e899619444c5 100644 (file)
    <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
index 4f5e0a4cc920b6bcb1de76e523506d7c5a6c5b9d..45054f85b1fc7aeb52ac9d2c6e63ae47c8a47c2a 100644 (file)
 #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.  */
@@ -39,7 +33,6 @@
 # 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
@@ -55,3 +48,7 @@
 #endif
 
 #include_next <kernel-features.h>
+
+#if __LINUX_KERNEL_VERSION < 0x040300
+# undef __ASSUME_ACCEPT4_SYSCALL
+#endif
index b238322418adcbca775efdb41faf307da551030a..c0c936b95ba7dcef7904c2956afaf50033e7332d 100644 (file)
 #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 */
index 9832f41167c26d358a91c96e709040fcaa6e1732..4411503cb2ea65d092e6558ab78f174ab520f9a1 100644 (file)
 #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
index 7bce07e204334183be069a398d6647612023e45e..646bc4b68047c3aec14977a862116bcdef0af45f 100644 (file)
 
 /* 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
index 8757b5aa877ccd83efec5e5817124b129affb93f..3938989f88fc643ed980121b4d5d9d4670f6ecf9 100644 (file)
 #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
 
@@ -60,3 +53,8 @@
 # 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
index 702c357317a33a15d293ae658097a28f2917fa23..7f8c98a4da619d6fb496083812eab9be2aaa99be 100644 (file)
 
 #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
diff --git a/sysdeps/unix/sysv/linux/nios2/kernel-features.h b/sysdeps/unix/sysv/linux/nios2/kernel-features.h
deleted file mode 100644 (file)
index c90df5d..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-/* 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>
index fa3e7ef111b3f24c178273004f172dc72c83d4b7..171c030b03b42f9a720fe6ed1d6c23eb7e23ce9a 100644 (file)
 /* 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
@@ -46,7 +40,6 @@
 #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>
index b810542489e9680917e5de4d63273b2580b1e6e5..a6f131be06000e0cf375e8671050235b3353a53e 100644 (file)
 
 /* 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
@@ -45,3 +42,9 @@
 #endif
 
 #include_next <kernel-features.h>
+
+#if __LINUX_KERNEL_VERSION < 0x040300
+# undef __ASSUME_ACCEPT4_SYSCALL
+# undef __ASSUME_RECVMMSG_SYSCALL
+# undef __ASSUME_SENDMMSG_SYSCALL
+#endif
index f9bc6f232458a2dd113be5f017d6be73dbe2f61d..9b4d1c2b2cf291e8958121e84616c0a81dfff88c 100644 (file)
 #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>
index 3a7baa7f0816631f3d236e2eb856a35c50b36522..386f2304d134b8fbe0462e11f78c956a41836724 100644 (file)
 #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>
index 4c48c67ae025eea70d4f43ea4884833b638ac3bf..7511f7770ae3ac3bcabed8950e0dd2c47b3fc49c 100644 (file)
    <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
index 0b84f113af2448b7cfa15ea754e35fa12ae4dc7a..9491c3e831bbe7d7443a5a820cf6d59d9e331195 100644 (file)
    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
This page took 0.099541 seconds and 5 git commands to generate.