LInux fork/clone can be interrupted by a signal which causes the syscall to restart. The can go on forever with periodic signals. Beware
FYI @musllibc should be immune to this issue and glibc easily could be too: https://git.musl-libc.org/cgit/musl/tree/src/process/fork.c#n19 …
-
-
I wasn't trying to work around this; rather, safely updating tid & robust list at fork seems to require blocking sigs
-
Can the updates be done without blocking signals? Blocking obviously increases latency.
-
No, because a signal handler could run after fork in the child, but before they're set correctly.
-
In any case SYS_fork takes about 200-500x the time of SYS_rt_sigprocmask.
End of conversation
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.