Documented in 1 files:
Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 8 files:
- fs/aio.c, line 1394
- include/linux/wait.h, line 555
- io_uring/rw.c, line 1300
- kernel/futex/pi.c, line 1117
- kernel/futex/waitwake.c
- kernel/time/hrtimer.c
- kernel/time/sleep_timeout.c, line 213
- net/core/pktgen.c, line 2346
Smatch caller information:
drivers/i2c/busses/i2c-nomadik.c nmk_i2c_wait_xfer_done() -> hrtimer_sleeper_start_expires()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sl | 1947981931561381888 |
| PARAM_VALUE | 0 | sl->timer._softexpires | 0-3999000 |
| PARAM_VALUE | 0 | sl->timer.base | 4096-ptr_max |
| PARAM_VALUE | 0 | sl->timer.function | 1-u64max |
| PARAM_VALUE | 0 | sl->timer.is_queued | 0 |
| PARAM_VALUE | 0 | sl->timer.is_rel | 0 |
| PARAM_VALUE | 0 | sl->timer.node.expires | 0-s64max |
| PARAM_VALUE | 0 | sl->timer.node.node.next | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.node.__rb_parent_color | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.node.rb_left | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.node.rb_right | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.prev | 0 |
| PARAM_VALUE | 1 | mode | 1 |
| NOCHECK_CALL |
kernel/time/sleep_timeout.c schedule_hrtimeout_range_clock() -> hrtimer_sleeper_start_expires()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sl | 6850896603411279872 |
| PARAM_VALUE | 0 | sl->timer._softexpires | s64min-(-1),1-s64max |
| PARAM_VALUE | 0 | sl->timer.base | 4096-ptr_max |
| PARAM_VALUE | 0 | sl->timer.function | 1-u64max |
| PARAM_VALUE | 0 | sl->timer.is_queued | 0 |
| PARAM_VALUE | 0 | sl->timer.is_rel | 0 |
| PARAM_VALUE | 0 | sl->timer.node.expires | 0-s64max |
| PARAM_VALUE | 0 | sl->timer.node.node.next | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.node.__rb_parent_color | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.node.rb_left | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.node.rb_right | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.prev | 0 |
| PARAM_VALUE | 1 | mode | 0-1,9 |
| DATA_SOURCE | 1 | mode | $2 |
| HARD_MAX | 1 | mode | 9 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | sl->timer._softexpires | s64min-(-2),1-s64max |
net/core/pktgen.c spin() -> hrtimer_sleeper_start_expires()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sl | 7918161878255718400 |
| PARAM_VALUE | 0 | sl->timer.is_queued | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.next | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.prev | 0 |
| PARAM_VALUE | 1 | mode | 0 |
| NOCHECK_CALL |
fs/aio.c read_events() -> hrtimer_sleeper_start_expires()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sl | 7800904143318794240 |
| PARAM_VALUE | 0 | sl->timer._softexpires | s64min-(-1),1-9223372036854775806 |
| PARAM_VALUE | 0 | sl->timer.base | 4096-ptr_max |
| PARAM_VALUE | 0 | sl->timer.function | 1-u64max |
| PARAM_VALUE | 0 | sl->timer.is_queued | 0 |
| PARAM_VALUE | 0 | sl->timer.is_rel | 0 |
| PARAM_VALUE | 0 | sl->timer.node.expires | 0-s64max |
| PARAM_VALUE | 0 | sl->timer.node.node.next | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.node.__rb_parent_color | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.node.rb_left | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.node.rb_right | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.prev | 0 |
| PARAM_VALUE | 1 | mode | 1 |
| NOCHECK_CALL |
drivers/md/dm-vdo/indexer/funnel-requestqueue.c wait_for_request() -> hrtimer_sleeper_start_expires()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sl | 2905200222337331200 |
| PARAM_VALUE | 0 | sl->timer._softexpires | s64min-(-1),10000-9223372036854775806 |
| PARAM_VALUE | 0 | sl->timer.base | 4096-ptr_max |
| PARAM_VALUE | 0 | sl->timer.function | 1-u64max |
| PARAM_VALUE | 0 | sl->timer.is_queued | 0 |
| PARAM_VALUE | 0 | sl->timer.is_rel | 0 |
| PARAM_VALUE | 0 | sl->timer.node.expires | 0-s64max |
| PARAM_VALUE | 0 | sl->timer.node.node.next | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.node.__rb_parent_color | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.node.rb_left | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.node.rb_right | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.prev | 0 |
| PARAM_VALUE | 1 | mode | 1 |
| NOCHECK_CALL |
kernel/time/hrtimer.c do_nanosleep() -> hrtimer_sleeper_start_expires()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sl | 2964396903775305728,6221740963720155136 |
| PARAM_VALUE | 0 | sl->timer.is_queued | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.next | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.prev | 0 |
| PARAM_VALUE | 1 | mode | 0-1 |
| CAPPED_DATA | 0 | sl->timer.base | 1 |
| DATA_SOURCE | 0 | sl | $0 |
| DATA_SOURCE | 1 | mode | $1 [m] |
| FUZZY_MAX | 1 | mode | 1 |
| HARD_MAX | 1 | mode | 1 |
| NOCHECK_CALL | |||
| USER_DATA | 0 | sl->timer._softexpires | 0-9223372035999999999[c] |
| USER_DATA | 0 | sl->timer.base->cpu_base->softirq_next_timer->_softexpires | s64min-s64max |
| USER_DATA | 0 | sl->timer.base->cpu_base->softirq_next_timer->node.expires | 0-9223372035999999999[c] |
kernel/futex/waitwake.c futex_do_wait() -> hrtimer_sleeper_start_expires()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sl | 600911181894369280,1737414225000210432,1908912304835444736 |
| PARAM_VALUE | 0 | sl->timer.is_queued | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.next | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.prev | 0 |
| PARAM_VALUE | 1 | mode | 0 |
| BUF_SIZE | 0 | sl | (-1)-0,88 |
| BUF_SIZE | 0 | sl | (-1)-0,88 |
| DATA_SOURCE | 0 | sl | $1 |
| RX_PATH | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | sl->timer._softexpires | 0-9223372035999999999[c] |
kernel/futex/waitwake.c futex_wait_multiple() -> hrtimer_sleeper_start_expires()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sl | 1464062181396357120 |
| PARAM_VALUE | 0 | sl->timer.base | 4096-ptr_max |
| PARAM_VALUE | 0 | sl->timer.function | 1-u64max |
| PARAM_VALUE | 0 | sl->timer.is_hard | 0 |
| PARAM_VALUE | 0 | sl->timer.is_lazy | 0 |
| PARAM_VALUE | 0 | sl->timer.is_queued | 0 |
| PARAM_VALUE | 0 | sl->timer.is_rel | 0 |
| PARAM_VALUE | 0 | sl->timer.is_soft | 0 |
| PARAM_VALUE | 0 | sl->timer.node.expires | 0-s64max |
| PARAM_VALUE | 0 | sl->timer.node.node.next | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.node.__rb_parent_color | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.node.rb_left | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.node.rb_right | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.prev | 0 |
| PARAM_VALUE | 1 | mode | 0 |
| BUF_SIZE | 0 | sl | 0,88 |
| BUF_SIZE | 0 | sl | 0,88 |
| DATA_SOURCE | 0 | sl | $2 |
| NOCHECK_CALL |
kernel/futex/pi.c futex_lock_pi() -> hrtimer_sleeper_start_expires()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sl | 7279306262414782464 |
| PARAM_VALUE | 0 | sl->timer.base | 4096-ptr_max |
| PARAM_VALUE | 0 | sl->timer.function | 1-u64max |
| PARAM_VALUE | 0 | sl->timer.is_hard | 0 |
| PARAM_VALUE | 0 | sl->timer.is_lazy | 0 |
| PARAM_VALUE | 0 | sl->timer.is_queued | 0 |
| PARAM_VALUE | 0 | sl->timer.is_rel | 0 |
| PARAM_VALUE | 0 | sl->timer.is_soft | 0 |
| PARAM_VALUE | 0 | sl->timer.node.expires | 0-s64max |
| PARAM_VALUE | 0 | sl->timer.node.node.next | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.node.__rb_parent_color | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.node.rb_left | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.node.rb_right | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.prev | 0 |
| PARAM_VALUE | 1 | mode | 0 |
| BUF_SIZE | 0 | sl | 88 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | sl->timer._softexpires | 0-9223372035999999999[c] |
| LOCK2 | &hb->lock | ||
| TYPE_LOCK | (struct futex_hash_bucket)->lock |
io_uring/rw.c io_hybrid_iopoll_delay() -> hrtimer_sleeper_start_expires()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sl | 8303812710853849088 |
| PARAM_VALUE | 0 | sl->timer._softexpires | 0-s64max |
| PARAM_VALUE | 0 | sl->timer.base | 4096-ptr_max |
| PARAM_VALUE | 0 | sl->timer.function | 1-u64max |
| PARAM_VALUE | 0 | sl->timer.is_queued | 0 |
| PARAM_VALUE | 0 | sl->timer.is_rel | 0 |
| PARAM_VALUE | 0 | sl->timer.node.expires | 0-s64max |
| PARAM_VALUE | 0 | sl->timer.node.node.next | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.node.__rb_parent_color | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.node.rb_left | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.node.rb_right | 0 |
| PARAM_VALUE | 0 | sl->timer.node.node.prev | 0 |
| PARAM_VALUE | 1 | mode | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &ctx->uring_lock | ||
| HALF_LOCKED2 | &sqd->lock | ||
| TYPE_LOCK | (struct io_ring_ctx)->uring_lock |