Defined in 1 files as a function:
Referenced in 13 files:
- arch/x86/kvm/i8254.c, line 230
- arch/x86/kvm/lapic.c, line 3369
- arch/x86/kvm/vmx/vmx.c, line 8545
- arch/x86/kvm/xen.c, line 1274
- drivers/power/supply/ab8500_chargalg.c
- drivers/s390/crypto/ap_bus.c, line 1486
- include/linux/hrtimer.h, line 255
- io_uring/wait.c, line 131
- kernel/events/core.c, line 1328
- kernel/sched/fair.c, line 7569
- kernel/sched/rt.c, line 150
- kernel/time/tick-sched.c, line 1517
- net/can/bcm.c, line 497
Smatch caller information:
arch/x86/kvm/i8254.c __kvm_migrate_pit_timer() -> hrtimer_start_expires()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | timer | 4096-ptr_max |
| PARAM_VALUE | 0 | timer->is_queued | 0 |
| PARAM_VALUE | 0 | timer->node.node.next | 0 |
| PARAM_VALUE | 0 | timer->node.node.prev | 0 |
| PARAM_VALUE | 1 | mode | 0 |
| BUF_SIZE | 0 | timer | 80 |
| CAPPED_DATA | 0 | timer | 1 |
| CAPPED_DATA | 0 | timer->base | 1 |
| CAPPED_DATA | 0 | timer->base->cpu_base | 1 |
| CAPPED_DATA | 0 | timer->base->running | 1 |
| PARAM_COMPARE | 0 | timer | != $0->base->running |
| PARAM_COMPARE | 0 | timer | != $0->base->running |
| NOCHECK_CALL | |||
| LOCK2 | &pit->pit_state.lock | ||
| LOCK2 | &vcpu->kvm->srcu | ||
| LOCK2 | &vcpu->mutex | ||
| TYPE_LOCK | (struct kvm)->srcu | ||
| TYPE_LOCK | (struct kvm_kpit_state)->lock | ||
| TYPE_LOCK | (struct kvm_vcpu)->mutex |
io_uring/wait.c io_cqring_schedule_timeout() -> hrtimer_start_expires()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | timer | 479328946022166608 |
| PARAM_VALUE | 0 | timer->base | 4096-ptr_max |
| PARAM_VALUE | 0 | timer->function | 1-u64max |
| PARAM_VALUE | 0 | timer->is_hard | 0 |
| PARAM_VALUE | 0 | timer->is_lazy | 0 |
| PARAM_VALUE | 0 | timer->is_queued | 0 |
| PARAM_VALUE | 0 | timer->is_rel | 0 |
| PARAM_VALUE | 0 | timer->is_soft | 0 |
| PARAM_VALUE | 0 | timer->node.expires | 0-s64max |
| PARAM_VALUE | 0 | timer->node.node.next | 0 |
| PARAM_VALUE | 0 | timer->node.node.node.__rb_parent_color | 0 |
| PARAM_VALUE | 0 | timer->node.node.node.rb_left | 0 |
| PARAM_VALUE | 0 | timer->node.node.node.rb_right | 0 |
| PARAM_VALUE | 0 | timer->node.node.prev | 0 |
| PARAM_VALUE | 1 | mode | 0 |
| MEM_ZERO | 0 | timer | |
| NOCHECK_CALL |
kernel/time/itimer.c hrtimer_restart() -> hrtimer_start_expires()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | timer | 4096-ptr_max |
| PARAM_VALUE | 0 | timer->base | 4096-ptr_max |
| PARAM_VALUE | 0 | timer->is_queued | 0 |
| PARAM_VALUE | 0 | timer->node.expires | (-9223372036854775807)-s64max |
| PARAM_VALUE | 1 | mode | 0 |
| BUF_SIZE | 0 | timer | 80 |
| DATA_SOURCE | 0 | timer | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | irq | ||
| HALF_LOCKED2 | &sighand->siglock | ||
| HALF_LOCKED2 | &task->sighand->siglock | ||
| HALF_LOCKED2 | &tsk->sighand->siglock |
kernel/sched/build_policy.c do_start_rt_bandwidth() -> hrtimer_start_expires()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | timer | 4096-ptr_max |
| PARAM_VALUE | 0 | timer->base | 4096-ptr_max |
| PARAM_VALUE | 0 | timer->node.expires | (-9223372036854775807)-s64max |
| PARAM_VALUE | 1 | mode | 10 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &rt_b->rt_runtime_lock | ||
| TYPE_LOCK | (struct rt_bandwidth)->rt_runtime_lock |
net/can/bcm.c bcm_tx_start_timer() -> hrtimer_start_expires()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | timer | 4096-ptr_max |
| PARAM_VALUE | 0 | timer->base | 0,4096-ptr_max |
| PARAM_VALUE | 0 | timer->is_hard | 0 |
| PARAM_VALUE | 0 | timer->is_lazy | 0 |
| PARAM_VALUE | 0 | timer->is_queued | 0 |
| PARAM_VALUE | 0 | timer->is_rel | 0 |
| PARAM_VALUE | 0 | timer->is_soft | 0 |
| PARAM_VALUE | 0 | timer->node.node.next | 0 |
| PARAM_VALUE | 0 | timer->node.node.node.__rb_parent_color | 0 |
| PARAM_VALUE | 0 | timer->node.node.node.rb_left | 0 |
| PARAM_VALUE | 0 | timer->node.node.node.rb_right | 0 |
| PARAM_VALUE | 0 | timer->node.node.prev | 0 |
| PARAM_VALUE | 1 | mode | 4 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &vq->mutex | ||
| HALF_LOCKED2 | sk |
arch/x86/kvm/xen.c kvm_xen_vcpu_get_attr() -> hrtimer_start_expires()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | timer | 4096-ptr_max |
| PARAM_VALUE | 1 | mode | 8 |
| NOCHECK_CALL | |||
| LOCK2 | &vcpu->kvm->arch.xen.xen_lock | ||
| LOCK2 | &vcpu->mutex | ||
| TYPE_LOCK | (struct kvm_vcpu)->mutex | ||
| TYPE_LOCK | (struct kvm_xen)->xen_lock |
kernel/sched/fair.c start_cfs_bandwidth() -> hrtimer_start_expires()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | timer | 4096-ptr_max |
| PARAM_VALUE | 0 | timer->base | 4096-ptr_max |
| PARAM_VALUE | 0 | timer->node.expires | (-9223372036854775807)-s64max |
| PARAM_VALUE | 1 | mode | 2 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &cfs_b->lock | ||
| HALF_LOCKED2 | &of->mutex | ||
| HALF_LOCKED2 | _T->lock |
arch/x86/kvm/lapic.c __kvm_migrate_apic_timer() -> hrtimer_start_expires()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | timer | 4096-ptr_max |
| PARAM_VALUE | 0 | timer->is_queued | 0 |
| PARAM_VALUE | 0 | timer->node.node.next | 0 |
| PARAM_VALUE | 0 | timer->node.node.prev | 0 |
| PARAM_VALUE | 1 | mode | 8 |
| BUF_SIZE | 0 | timer | 80 |
| CAPPED_DATA | 0 | timer | 1 |
| CAPPED_DATA | 0 | timer->base | 1 |
| CAPPED_DATA | 0 | timer->base->cpu_base | 1 |
| CAPPED_DATA | 0 | timer->base->running | 1 |
| PARAM_COMPARE | 0 | timer | != $0->base->running |
| PARAM_COMPARE | 0 | timer | != $0->base->running |
| NOCHECK_CALL | |||
| LOCK2 | &vcpu->kvm->srcu | ||
| LOCK2 | &vcpu->mutex | ||
| TYPE_LOCK | (struct kvm)->srcu | ||
| TYPE_LOCK | (struct kvm_vcpu)->mutex |
kernel/time/tick-sched.c tick_setup_sched_timer() -> hrtimer_start_expires()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | timer | 4096-ptr_max |
| PARAM_VALUE | 0 | timer->_softexpires | 0-s64max |
| PARAM_VALUE | 0 | timer->base | 4096-ptr_max |
| PARAM_VALUE | 0 | timer->function | 1-u64max |
| PARAM_VALUE | 0 | timer->is_queued | 0 |
| PARAM_VALUE | 0 | timer->is_rel | 0 |
| PARAM_VALUE | 0 | timer->node.expires | (-9223372036854775807)-s64max |
| PARAM_VALUE | 0 | timer->node.node.next | 0 |
| PARAM_VALUE | 0 | timer->node.node.node.__rb_parent_color | 0 |
| PARAM_VALUE | 0 | timer->node.node.node.rb_left | 0 |
| PARAM_VALUE | 0 | timer->node.node.node.rb_right | 0 |
| PARAM_VALUE | 0 | timer->node.node.prev | 0 |
| PARAM_VALUE | 1 | mode | 10 |
| MEM_ZERO | 0 | timer | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/block/null_blk/main.c hrtimer_restart() -> hrtimer_start_expires()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | timer | 4096-ptr_max |
| PARAM_VALUE | 0 | timer->is_queued | 0 |
| PARAM_VALUE | 1 | mode | 0 |
| DATA_SOURCE | 0 | timer | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | __tag_set->srcu | ||
| HALF_LOCKED2 | rcu_read |
drivers/i2c/busses/i2c-imx.c hrtimer_restart() -> hrtimer_start_expires()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | timer | 4096-ptr_max |
| PARAM_VALUE | 0 | timer->base | 4096-ptr_max |
| PARAM_VALUE | 0 | timer->node.expires | (-9223372036854775807)-s64max |
| PARAM_VALUE | 1 | mode | 0 |
| DATA_SOURCE | 0 | timer | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HOST_DATA | 0 | timer->node.node.node.__rb_parent_color | 0-u64max |
| HALF_LOCKED2 | &i2c_imx->slave_lock | ||
| HALF_LOCKED2 | irq |
kernel/events/core.c perf_mux_hrtimer_restart() -> hrtimer_start_expires()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | timer | 4096-ptr_max |
| PARAM_VALUE | 0 | timer->base | 4096-ptr_max |
| PARAM_VALUE | 0 | timer->node.expires | (-9223372036854775807)-s64max |
| PARAM_VALUE | 1 | mode | 10 |
| BUF_SIZE | 0 | timer | 80 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &cpc->hrtimer_lock | ||
| LOCK2 | flags | ||
| TYPE_LOCK | (struct perf_cpu_pmu_context)->hrtimer_lock |
drivers/char/hw_random/timeriomem-rng.c hrtimer_restart() -> hrtimer_start_expires()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | timer | 4096-ptr_max |
| PARAM_VALUE | 0 | timer->base | 4096-ptr_max |
| PARAM_VALUE | 0 | timer->node.expires | (-9223372036854775807)-s64max |
| PARAM_VALUE | 1 | mode | 0 |
| DATA_SOURCE | 0 | timer | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | global &reading_mutex |
arch/x86/kvm/vmx/vmx.c vmx_migrate_timers() -> hrtimer_start_expires()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | timer | 4096-ptr_max |
| PARAM_VALUE | 0 | timer->is_queued | 0 |
| PARAM_VALUE | 0 | timer->node.node.next | 0 |
| PARAM_VALUE | 0 | timer->node.node.prev | 0 |
| PARAM_VALUE | 1 | mode | 2 |
| BUF_SIZE | 0 | timer | 80 |
| CAPPED_DATA | 0 | timer | 1 |
| CAPPED_DATA | 0 | timer->base | 1 |
| CAPPED_DATA | 0 | timer->base->cpu_base | 1 |
| CAPPED_DATA | 0 | timer->base->running | 1 |
| PARAM_COMPARE | 0 | timer | != $0->base->running |
| PARAM_COMPARE | 0 | timer | != $0->base->running |
| NOCHECK_CALL |