glibc/sysdeps/unix/sysv/linux/sh/kernel-features.h
Joseph Myers 6d08b0223a Correct __ASSUME_PRLIMIT64 for hppa/microblaze/sh (bug 17779).
__ASSUME_PRLIMIT64 is defined in kernel-features.h for kernels 2.6.36
and later, but hppa, microblaze and sh did not add the prlimit64
syscall until 2.6.37.  This patch adds corresponding undefines of
__ASSUME_PRLIMIT64 to those architectures' kernel-features.h files.

(This concludes the kernel-features.h fixes arising out of the review
- limited to macros defined in the architecture-independent
kernel-features.h file - I did in connection with the move to 2.6.32
minimum kernel version.  For that subset of macros - I didn't check
any purely architecture-specific macros - I think they are now defined
for the correct kernel versions on each architecture after this
patch.)

	[BZ #17779]
	* sysdeps/unix/sysv/linux/hppa/kernel-features.h
	[__LINUX_KERNEL_VERSION < 0x020625] (__ASSUME_PRLIMIT64):
	Undefine.
	* sysdeps/unix/sysv/linux/microblaze/kernel-features.h
	[__LINUX_KERNEL_VERSION < 0x020625] (__ASSUME_PRLIMIT64):
	Likewise.
	* sysdeps/unix/sysv/linux/sh/kernel-features.h
	[__LINUX_KERNEL_VERSION < 0x020625] (__ASSUME_PRLIMIT64):
	Likewise.
2015-03-02 23:05:55 +00:00

48 lines
1.6 KiB
C

/* Set flags signalling availability of kernel features based on given
kernel version number. SH version.
Copyright (C) 1999-2015 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/>. */
/* SH uses socketcall. */
#define __ASSUME_SOCKETCALL 1
/* The accept4 syscall was added for SH in 2.6.37. */
#if __LINUX_KERNEL_VERSION >= 0x020625
# define __ASSUME_ACCEPT4_SYSCALL 1
#endif
/* The recvmmsg syscall was added for SH in 2.6.37. */
#if __LINUX_KERNEL_VERSION >= 0x020625
# define __ASSUME_RECVMMSG_SYSCALL 1
#endif
/* The sendmmsg syscall was added for SH in 3.0. */
#if __LINUX_KERNEL_VERSION >= 0x030000
# define __ASSUME_SENDMMSG_SYSCALL 1
#endif
#define __ASSUME_SENDMMSG_SYSCALL_WITH_SOCKETCALL 1
#include_next <kernel-features.h>
/* SH does not have a 64-bit inode field. */
#undef __ASSUME_ST_INO_64_BIT
/* The prlimit64 syscall was added for SH in 2.6.37. */
#if __LINUX_KERNEL_VERSION < 0x020625
# undef __ASSUME_PRLIMIT64
#endif