mirror of
https://sourceware.org/git/glibc.git
synced 2024-12-04 02:40:06 +00:00
637461d965
This patch does some initial cleanup, following the move to 2.6.32 minimum kernel version, by removing __LINUX_KERNEL_VERSION conditionals that are now always-true or always-false. In the case of __ASSUME_ARG_MAX_STACK_BASED, where the conditional used a kernel version that was itself in a macro, the associated sysconf.c code is also cleaned up and __ASSUME_ARG_MAX_STACK_BASED removed completely. Tested x86_64 that disassembly of installed shared libraries is unchanged by the patch. * sysdeps/unix/sysv/linux/kernel-features.h [__s390__] (__ASSUME_UTIMES): Do not condition on kernel version. (__ASSUME_PSELECT): Define unconditionally. (__ASSUME_PPOLL): Likewise. (__ASSUME_ATFCTS): Likewise. (__ASSUME_SET_ROBUST_LIST): Do not condition on kernel version. (__ASSUME_COMPLETE_READV_WRITEV): Define unconditionally. (__ASSUME_FUTEX_LOCK_PI): Do not condition on kernel version. (__ASSUME_UTIMENSAT): Define unconditionally. (__ASSUME_PRIVATE_FUTEX): Likewise. (__ASSUME_FALLOCATE): Likewise. (__ASSUME_O_CLOEXEC): Likewise. (__LINUX_ARG_MAX_STACK_BASED_MIN_KERNEL): Remove. (__ASSUME_ARG_MAX_STACK_BASED): Likewise. (__ASSUME_ADJ_OFFSET_SS_READ): Define unconditionally. (__ASSUME_SOCK_CLOEXEC): Do not condition on kernel version. (__ASSUME_IN_NONBLOCK): Likewise. (__ASSUME_PIPE2): Likewise. (__ASSUME_EVENTFD2): Likewise. (__ASSUME_SIGNALFD4): Likewise. (__ASSUME_DUP3): Likewise. [__x86_64__ || __sparc__] (__ASSUME_ACCEPT4_SYSCALL): Likewise. (__ASSUME_FUTEX_CLOCK_REALTIME): Define unconditionally. (__ASSUME_AT_RANDOM): Likewise. (__ASSUME_PREADV): Likewise. (__ASSUME_PWRITEV): Likewise. (__ASSUME_REQUEUE_PI): Do not condition on kernel version. (__ASSUME_F_GETOWN_EX): Define unconditionally. (__ASSUME_XFS_RESTRICTED_CHOWN): Likewise. * sysdeps/unix/sysv/linux/sysconf.c (__sysconf) [!__ASSUME_ARG_MAX_STACK_BASED]: Remove conditional code. * sysdeps/unix/sysv/linux/alpha/kernel-features.h (__ASSUME_O_CLOEXEC): Define unconditionally. (__ASSUME_PSELECT): Do not undefine conditionally. (__ASSUME_PPOLL): Likewise. (__ASSUME_ATFCTS): Likewise. (__ASSUME_SET_ROBUST_LIST): Likewise. (__ASSUME_UTIMENSAT): Likewise. (__ASSUME_FDATASYNC): Define unconditionally. * sysdeps/unix/sysv/linux/arm/kernel-features.h (__ASSUME_SIGFRAME_V2): Likewise. )__ASSUME_EVENTFD2): Likewise. (__ASSUME_SIGNALFD4): Likewise. (__ASSUME_PSELECT): Do not undefine conditionally. (__ASSUME_PPOLL): Likewise. * sysdeps/unix/sysv/linux/ia64/kernel-features.h (__ASSUME_PSELECT): Define unconditionally. (__ASSUME_PPOLL): Likewise. (__ASSUME_O_CLOEXEC): Likewise. (__ASSUME_SOCK_CLOEXEC): Likewise. (__ASSUME_IN_NONBLOCK): Likewise. (__ASSUME_PIPE2): Likewise. (__ASSUME_EVENTFD2): Likewise. (__ASSUME_SIGNALFD4): Likewise. (__ASSUME_DUP3): Likewise. * sysdeps/unix/sysv/linux/m68k/kernel-features.h (__ASSUME_O_CLOEXEC): Likewise. (__ASSUME_SOCK_CLOEXEC): Likewise. (__ASSUME_IN_NONBLOCK): Likewise. (__ASSUME_PIPE2): Likewise. (__ASSUME_EVENTFD2): Likewise. (__ASSUME_SIGNALFD4): Likewise. (__ASSUME_DUP3): Likewise. * sysdeps/unix/sysv/linux/mips/kernel-features.h (__ASSUME_EVENTFD2): Likewise. (__ASSUME_SIGNALFD4): Likewise. (__ASSUME_ACCEPT4_SYSCALL): Likewise.
77 lines
2.4 KiB
C
77 lines
2.4 KiB
C
/* Set flags signalling availability of kernel features based on given
|
|
kernel version number.
|
|
Copyright (C) 2010-2014 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 _KERNEL_FEATURES_H
|
|
#define _KERNEL_FEATURES_H 1
|
|
|
|
#define __ASSUME_UTIMES 1
|
|
|
|
/* Support for the O_CLOEXEC flag was added for alpha in 2.6.23. */
|
|
#define __ASSUME_O_CLOEXEC 1
|
|
|
|
/* Support for various CLOEXEC and NONBLOCK flags was added for alpha after
|
|
2.6.33-rc1. */
|
|
#if __LINUX_KERNEL_VERSION >= 0x020621
|
|
# define __ASSUME_SOCK_CLOEXEC 1
|
|
# define __ASSUME_IN_NONBLOCK 1
|
|
#endif
|
|
|
|
/* Support for the pipe2, eventfd2, signalfd4 syscalls was added for alpha
|
|
after 2.6.33-rc1. */
|
|
#if __LINUX_KERNEL_VERSION >= 0x020621
|
|
# define __ASSUME_PIPE2 1
|
|
# define __ASSUME_EVENTFD2 1
|
|
# define __ASSUME_SIGNALFD4 1
|
|
#endif
|
|
|
|
/* Support for recvmmsg was added for alpha in 2.6.33. */
|
|
#if __LINUX_KERNEL_VERSION >= 0x020621
|
|
# define __ASSUME_RECVMMSG_SYSCALL 1
|
|
#endif
|
|
|
|
/* Support for accept4 and sendmmsg was added for alpha in 3.2. */
|
|
#if __LINUX_KERNEL_VERSION >= 0x030200
|
|
# define __ASSUME_ACCEPT4_SYSCALL 1
|
|
# define __ASSUME_SENDMMSG_SYSCALL 1
|
|
#endif
|
|
|
|
#include_next <kernel-features.h>
|
|
|
|
#undef __ASSUME_ST_INO_64_BIT
|
|
|
|
/* Support for fallocate was added for alpha after 2.6.33-rc1. */
|
|
#if __LINUX_KERNEL_VERSION < 0x020621
|
|
# undef __ASSUME_FALLOCATE
|
|
#endif
|
|
|
|
/* There never has been support for fstat64. */
|
|
#undef __ASSUME_STATFS64
|
|
#define __ASSUME_STATFS64 0
|
|
|
|
/* Support for fsyncdata was added for alpha after 2.6.21. */
|
|
#define __ASSUME_FDATASYNC 1
|
|
|
|
/* Support for preadv and pwritev was added for alpha in 2.6.33. */
|
|
#if __LINUX_KERNEL_VERSION < 0x020621
|
|
# undef __ASSUME_PREADV
|
|
# undef __ASSUME_PWRITEV
|
|
#endif
|
|
|
|
#endif /* _KERNEL_FEATURES_H */
|