pub fn sys_clock_nanosleep(
clock_id: u32,
flags: i32,
req_ptr: u64,
rem_ptr: u64,
) -> Result<u64, SyscallError>Expand description
SYS_CLOCK_NANOSLEEP: Sleep with clock selection and absolute/relative mode.
§Arguments
clock_id- Clock identifier (CLOCK_MONOTONIC or CLOCK_REALTIME)flags- 0 for relative sleep, TIMER_ABSTIME (1) for absolute wake-up timereq_ptr- Pointer to timespec (absolute time if TIMER_ABSTIME, else duration)rem_ptr- Optional pointer to timespec for remaining time (relative mode only)
§Returns
- 0 on success
- -EINTR if interrupted by a signal
- -EINVAL if clock_id or timespec is invalid
- -EFAULT if req_ptr is invalid
§POSIX compatibility
POSIX signature: int clock_nanosleep(clockid_t clock_id, int flags, const struct timespec *request, struct timespec *remain)