mirror of
				https://sourceware.org/git/glibc.git
				synced 2025-10-30 10:45:40 +03:00 
			
		
		
		
	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 */
 |