Skip to main content

sys_clock_nanosleep

Function sys_clock_nanosleep 

Source
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 time
  • req_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)