SCHEDULE_HRTIMEOUT_R(9) Driver Basics SCHEDULE_HRTIMEOUT_R(9)NAMEschedule_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
COPYRIGHTKernel Hackers Manual 2.6. November 2013 SCHEDULE_HRTIMEOUT_R(9)