1 /* Copyright (C) 2011-2024 Free Software Foundation, Inc.
2 This file is part of the GNU C Library.
4 The GNU C Library is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Lesser General Public
6 License as published by the Free Software Foundation; either
7 version 2.1 of the License, or (at your option) any later version.
9 The GNU C Library is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 Lesser General Public License for more details.
14 You should have received a copy of the GNU Lesser General Public
15 License along with the GNU C Library. If not, see
16 <https://www.gnu.org/licenses/>. */
20 /* All supported kernel versions for MicroBlaze have these syscalls. */
21 #define __ASSUME_CONNECT_SYSCALL 1
22 #define __ASSUME_SEND_SYSCALL 1
23 #define __ASSUME_RECV_SYSCALL 1
25 #include_next <kernel-features.h>
27 /* Support for the pselect6, preadv and pwritev syscalls was added in
29 #if __LINUX_KERNEL_VERSION < 0x030f00
30 # undef __ASSUME_PSELECT
31 # undef __ASSUME_PREADV
32 # undef __ASSUME_PWRITEV
35 /* Support for the sendmmsg syscall was added in 3.3. */
36 #if __LINUX_KERNEL_VERSION < 0x030300
37 # undef __ASSUME_SENDMMSG_SYSCALL
40 /* Support for the renameat2 syscall was added in 3.17. */
41 #if __LINUX_KERNEL_VERSION < 0x031100
42 # undef __ASSUME_RENAMEAT2
45 /* Support for the execveat syscall was added in 4.0. */
46 #if __LINUX_KERNEL_VERSION < 0x040000
47 # undef __ASSUME_EXECVEAT
50 /* Support for the mlock2 syscall was added in 4.7. */
51 #if __LINUX_KERNEL_VERSION < 0x040700
52 # undef __ASSUME_MLOCK2
55 /* Support for statx was added in kernel 4.12. */
56 #if __LINUX_KERNEL_VERSION < 0X040C00
57 # undef __ASSUME_STATX
60 #undef __ASSUME_CLONE_DEFAULT
61 #define __ASSUME_CLONE_BACKWARDS3
63 #if __BYTE_ORDER == __BIG_ENDIAN
64 # define __ASSUME_SYSVIPC_BROKEN_MODE_T
66 #undef __ASSUME_SYSVIPC_DEFAULT_IPC_64