[PATCH] manual: describe unsupported SYS_clone{3} when used via syscall
Yury Khrustalev
yury.khrustalev@arm.com
Fri Sep 12 08:29:55 GMT 2025
The syscall() function allows to make system calls directly, however
in the case of SYS_clone and SYS_clone3 the caller would have to take
care of extensive setup necessary for the internals of Glibc to work
correctly in the child threads which may make using syscall() with
these syscall numbers impractical.
---
This need for this patch was discussed in
https://inbox.sourceware.org/libc-alpha/20250901095112.1672473-3-yury.khrustalev@arm.com/
base-commit: cae3c9e3a1
---
manual/startup.texi | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/manual/startup.texi b/manual/startup.texi
index 9545fcc526..4ccfa3b593 100644
--- a/manual/startup.texi
+++ b/manual/startup.texi
@@ -737,6 +737,9 @@ anyway.
@code{syscall} does not provide cancellation logic, even if the system
call you're calling is listed as cancellable above.
+Using @code{syscall} with system call numbers @code{SYS_clone} and
+@code{SYS_clone3} is not supported.
+
@code{syscall} is declared in @file{unistd.h}.
@deftypefun {long int} syscall (long int @var{sysno}, @dots{})
@@ -804,7 +807,6 @@ if (rc == -1)
@end deftypefun
-
@node Program Termination
@section Program Termination
@cindex program termination
--
2.47.3
More information about the Libc-alpha
mailing list