summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--manual/startup.texi7
1 files changed, 6 insertions, 1 deletions
diff --git a/manual/startup.texi b/manual/startup.texi
index 9545fcc526..11fe58c5a6 100644
--- a/manual/startup.texi
+++ b/manual/startup.texi
@@ -737,6 +737,12 @@ 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 calls that affect the internal state of
+process of thread will likely result in undefined behavior. For this reason,
+at least the following system call numbers are not supported when invoked via
+@code{syscall}: @code{SYS_clone}, @code{SYS_clone2}, @code{SYS_clone3},
+@code{SYS_rt_sigreturn}, @code{SYS_sigreturn}, @code{SYS_vfork}.
+
@code{syscall} is declared in @file{unistd.h}.
@deftypefun {long int} syscall (long int @var{sysno}, @dots{})
@@ -804,7 +810,6 @@ if (rc == -1)
@end deftypefun
-
@node Program Termination
@section Program Termination
@cindex program termination