summaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv/linux/sh/kernel-features.h
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/unix/sysv/linux/sh/kernel-features.h')
-rw-r--r--sysdeps/unix/sysv/linux/sh/kernel-features.h72
1 files changed, 33 insertions, 39 deletions
diff --git a/sysdeps/unix/sysv/linux/sh/kernel-features.h b/sysdeps/unix/sysv/linux/sh/kernel-features.h
index 037d6ff0d6..b8ccb01518 100644
--- a/sysdeps/unix/sysv/linux/sh/kernel-features.h
+++ b/sysdeps/unix/sysv/linux/sh/kernel-features.h
@@ -1,6 +1,6 @@
/* Set flags signalling availability of kernel features based on given
kernel version number. SH version.
- Copyright (C) 1999-2016 Free Software Foundation, Inc.
+ Copyright (C) 1999-2018 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
@@ -17,52 +17,46 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
+#ifndef __KERNEL_FEATURES_SH__
+# define __KERNEL_FEATURES_SH__
+
/* SH uses socketcall. */
#define __ASSUME_SOCKETCALL 1
/* These syscalls were added for SH in 2.6.37. */
-#if __LINUX_KERNEL_VERSION >= 0x020625
-# define __ASSUME_SOCKET_SYSCALL 1
-# define __ASSUME_BIND_SYSCALL 1
-# define __ASSUME_CONNECT_SYSCALL 1
-# define __ASSUME_LISTEN_SYSCALL 1
-# define __ASSUME_ACCEPT_SYSCALL 1
-# define __ASSUME_GETSOCKNAME_SYSCALL 1
-# define __ASSUME_GETPEERNAME_SYSCALL 1
-# define __ASSUME_SOCKETPAIR_SYSCALL 1
-# define __ASSUME_SEND_SYSCALL 1
-# define __ASSUME_SENDTO_SYSCALL 1
-# define __ASSUME_RECV_SYSCALL 1
-# define __ASSUME_RECVFROM_SYSCALL 1
-# define __ASSUME_SHUTDOWN_SYSCALL 1
-# define __ASSUME_GETSOCKOPT_SYSCALL 1
-# define __ASSUME_SETSOCKOPT_SYSCALL 1
-# define __ASSUME_SENDMSG_SYSCALL 1
-# define __ASSUME_RECVMSG_SYSCALL 1
-#endif
-
-/* 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
+#define __ASSUME_SOCKET_SYSCALL 1
+#define __ASSUME_BIND_SYSCALL 1
+#define __ASSUME_CONNECT_SYSCALL 1
+#define __ASSUME_LISTEN_SYSCALL 1
+#define __ASSUME_GETSOCKNAME_SYSCALL 1
+#define __ASSUME_GETPEERNAME_SYSCALL 1
+#define __ASSUME_SOCKETPAIR_SYSCALL 1
+#define __ASSUME_SEND_SYSCALL 1
+#define __ASSUME_RECV_SYSCALL 1
+#define __ASSUME_SHUTDOWN_SYSCALL 1
+#define __ASSUME_GETSOCKOPT_SYSCALL 1
+#define __ASSUME_SETSOCKOPT_SYSCALL 1
#include_next <kernel-features.h>
/* SH does not have a 64-bit inode field. */
#undef __ASSUME_ST_INO_64_BIT
+#define __ASSUME_ST_INO_64_BIT 0
+
+/* SH4 ABI does not really require argument alignment for 64-bits, but
+ the kernel interface for p{read,write}64 adds a dummy long argument
+ before the offset. */
+#define __ASSUME_PRW_DUMMY_ARG 1
+
+/* sh only supports ipc syscall. */
+#undef __ASSUME_DIRECT_SYSVIPC_SYSCALLS
+
+/* Support for the renameat2 syscall was added in 4.8. */
+#if __LINUX_KERNEL_VERSION < 0x040800
+# undef __ASSUME_RENAMEAT2
+#endif
+
+/* sh does not support the statx system call. */
+#undef __ASSUME_STATX
-/* The prlimit64 syscall was added for SH in 2.6.37. */
-#if __LINUX_KERNEL_VERSION < 0x020625
-# undef __ASSUME_PRLIMIT64
#endif