get_robust_list(2) System Calls Manual get_robust_list(2) get_robust_list, set_robust_list - / futexes (libc -lc) #include /* struct robust_list_head */ #include /* SYS_* */ #include long syscall(SYS_get_robust_list, int pid, struct robust_list_head **head_ptr, size_t *sizep); long syscall(SYS_set_robust_list, struct robust_list_head *head, size_t size); : glibc syscall(2). futex . : . futex set_robust_list(). futex get_robust_list(). futex futex execve(2) futex futex . : FUTEX_OWNER_DIED futex futex(2) FUTEX_WAKE futex. get_robust_list() futex pid. pid 0 . head_ptr. **head_ptr sizep. get_robust_list() ptrace PTRACE_MODE_READ_REALCREDS ptrace(2). set_robust_list() futexes . head . size sizeof(*head). set_robust_list() get_robust_list() . set_robust_list() : EINVAL size sizeof(struct robust_list_head). get_robust_list() : EFAULT futex head. EPERM futex pid CAP_SYS_PTRACE. ESRCH pid. Linux 2.6.17. . futex glibc. futex . Linux 2.6.28 execve(2). kernel clone(2) gettid(2). futex(2), pthread_mutexattr_setrobust(3) Documentation/robust-futexes.rst Documentation/robust-futex-ABI.rst Linux 3 . . : . 6.18 8 2026 get_robust_list(2)