+++ This bug was initially created as a clone of Bug #1330661 +++ Description of problem: the clone syscall can return with some error codes that are not documented in the man page. In particular: ERESTARTSYS = 512 (To be restarted if SA_RESTART is set) Most common type of signal-interrupted syscall exit code. The system call will be restarted with the same arguments if SA_RESTART is set; otherwise, it will fail with EINTR. ERESTARTNOINTR = 513 (To be restarted) Rare. For example, fork() returns this if interrupted. SA_RESTART is ignored (assumed set): the restart is unconditional. ERESTARTNOHAND = 514 (To be restarted if no handler) pause(), rt_sigsuspend() etc use this code. SA_RESTART is ignored (assumed not set): syscall won't restart (will return EINTR instead) even after signal with SA_RESTART set. However, after SIG_IGN or SIG_DFL signal it will restart (thus the name "restart only if has no handler"). ERESTART_RESTARTBLOCK = 516 (Interrupted by signal) Syscalls like nanosleep(), poll() which can't be restarted with their original arguments use this code. Kernel will execute restart_syscall() instead, which changes arguments before restarting syscall. SA_RESTART is ignored (assumed not set) similarly to ERESTARTNOHAND. (Kernel can't honor SA_RESTART since restart data is saved in "restart block" in task struct, and if signal handler uses a syscall which in turn saves another such restart block, old data is lost and restart becomes impossible) Version-Release number of selected component (if applicable): This is true for all man pages right up until the latest version in Fedora.
Upstream patch: http://www.spinics.net/lists/linux-man/msg10249.html
Commit: http://pkgs.fedoraproject.org/cgit/rpms/man-pages.git/commit/?id=df7c07844299d632be7b3a2fdd56d44636864376