SCHEDULE_HRTIMEOUT_R(9)

NAME
schedule_hrtimeout_range - sleep until timeout

SYNOPSIS

int __sched schedule_hrtimeout_range(ktime_t * expires, unsigned long delta, const enum hrtimer_mode mode);

ARGUMENTS

expires
    timeout value (ktime_t)

delta
    slack in expires timeout (ktime_t)

mode
    timer mode, HRTIMER_MODE_ABS or HRTIMER_MODE_REL

DESCRIPTION

Make the current task sleep until the given expiry time has elapsed. The routine will return immediately unless the current task state has been set (see set_current_state).

The delta argument gives the kernel the freedom to schedule the actual wakeup to a time that is both power and performance friendly. The kernel give the normal best effort behavior for “expires+delta”, but may decide to fire the timer earlier, but no earlier than expires.

You can set the task state as follows -

TASK_UNINTERRUPTIBLE - at least timeout time is guaranteed to pass before the routine returns.

TASK_INTERRUPTIBLE - the routine may return early if a signal is delivered to the current task.

The current task state is guaranteed to be TASK_RUNNING when this routine returns.

Returns 0 when the timer has expired otherwise -EINTR

COPYRIGHT