From ad77b1bcca2499f422528c0af4b6f5565512d8bd Mon Sep 17 00:00:00 2001 From: Adhemerval Zanella Netto Date: Thu, 24 Aug 2023 13:42:16 -0300 Subject: [PATCH] linux: Define __ASSUME_CLONE3 to 0 for alpha, ia64, nios2, sh, and sparc Not all architectures added clone3 syscall. Reviewed-by: Florian Weimer --- sysdeps/unix/sysv/linux/alpha/kernel-features.h | 4 ++++ sysdeps/unix/sysv/linux/ia64/kernel-features.h | 4 ++++ .../sysv/linux/{ia64 => nios2}/kernel-features.h | 23 +++++----------------- sysdeps/unix/sysv/linux/sh/kernel-features.h | 4 ++++ sysdeps/unix/sysv/linux/sparc/kernel-features.h | 4 ++++ 5 files changed, 21 insertions(+), 18 deletions(-) copy sysdeps/unix/sysv/linux/{ia64 => nios2}/kernel-features.h (65%) diff --git a/sysdeps/unix/sysv/linux/alpha/kernel-features.h b/sysdeps/unix/sysv/linux/alpha/kernel-features.h index 3151e75449..d14c010333 100644 --- a/sysdeps/unix/sysv/linux/alpha/kernel-features.h +++ b/sysdeps/unix/sysv/linux/alpha/kernel-features.h @@ -50,4 +50,8 @@ /* Alpha requires old sysvipc even being a 64-bit architecture. */ #undef __ASSUME_SYSVIPC_DEFAULT_IPC_64 +/* Alpha does not provide clone3. */ +#undef __ASSUME_CLONE3 +#define __ASSUME_CLONE3 0 + #endif /* _KERNEL_FEATURES_H */ diff --git a/sysdeps/unix/sysv/linux/ia64/kernel-features.h b/sysdeps/unix/sysv/linux/ia64/kernel-features.h index 98ebfb74bf..398ec37328 100644 --- a/sysdeps/unix/sysv/linux/ia64/kernel-features.h +++ b/sysdeps/unix/sysv/linux/ia64/kernel-features.h @@ -34,4 +34,8 @@ #undef __ASSUME_CLONE_DEFAULT #define __ASSUME_CLONE2 +/* ia64 does not provide clone3. */ +#undef __ASSUME_CLONE3 +#define __ASSUME_CLONE3 0 + #endif /* _KERNEL_FEATURES_H */ diff --git a/sysdeps/unix/sysv/linux/ia64/kernel-features.h b/sysdeps/unix/sysv/linux/nios2/kernel-features.h similarity index 65% copy from sysdeps/unix/sysv/linux/ia64/kernel-features.h copy to sysdeps/unix/sysv/linux/nios2/kernel-features.h index 98ebfb74bf..239e507272 100644 --- a/sysdeps/unix/sysv/linux/ia64/kernel-features.h +++ b/sysdeps/unix/sysv/linux/nios2/kernel-features.h @@ -1,6 +1,6 @@ /* Set flags signalling availability of kernel features based on given - kernel version number. - Copyright (C) 2010-2023 Free Software Foundation, Inc. + kernel version number. NIOS2 version. + Copyright (C) 2023 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,21 +17,8 @@ License along with the GNU C Library. If not, see . */ -#ifndef _KERNEL_FEATURES_H -#define _KERNEL_FEATURES_H 1 - #include_next -#define __ASSUME_RECV_SYSCALL 1 -#define __ASSUME_SEND_SYSCALL 1 -#define __ASSUME_ACCEPT4_SYSCALL 1 - -/* Support for statx was added in 5.1. */ -#if __LINUX_KERNEL_VERSION < 0x050100 -# undef __ASSUME_STATX -#endif - -#undef __ASSUME_CLONE_DEFAULT -#define __ASSUME_CLONE2 - -#endif /* _KERNEL_FEATURES_H */ +/* nios2 does not provide clone3. */ +#undef __ASSUME_CLONE3 +#define __ASSUME_CLONE3 0 diff --git a/sysdeps/unix/sysv/linux/sh/kernel-features.h b/sysdeps/unix/sysv/linux/sh/kernel-features.h index 953fa8dff0..3eaf9e0857 100644 --- a/sysdeps/unix/sysv/linux/sh/kernel-features.h +++ b/sysdeps/unix/sysv/linux/sh/kernel-features.h @@ -55,4 +55,8 @@ # undef __ASSUME_STATX #endif +/* sh does not provide clone3. */ +#undef __ASSUME_CLONE3 +#define __ASSUME_CLONE3 0 + #endif diff --git a/sysdeps/unix/sysv/linux/sparc/kernel-features.h b/sysdeps/unix/sysv/linux/sparc/kernel-features.h index 98c938c16d..fcb343ef63 100644 --- a/sysdeps/unix/sysv/linux/sparc/kernel-features.h +++ b/sysdeps/unix/sysv/linux/sparc/kernel-features.h @@ -87,3 +87,7 @@ (INLINE_CLONE_SYSCALL). */ #undef __ASSUME_CLONE_DEFAULT #define __ASSUME_CLONE_BACKWARDS 1 + +/* sparc does not provide clone3. */ +#undef __ASSUME_CLONE3 +#define __ASSUME_CLONE3 0 -- 2.11.4.GIT