Defined in 1 files as a function:

Referenced in 15 files:

Smatch caller information:

net/sched/act_gate.c gate_start_timer() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &gact->common.tcfa_lock
LOCK2 bh
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
HALF_LOCKED2 global &audit_cmd_mutex.lock
HALF_LOCKED2 global &cb_lock
HALF_LOCKED2 global &crypto_cfg_mutex
HALF_LOCKED2 global &hwsim_phys_lock
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex
TYPE_LOCK (struct tc_action)->tcfa_lock

sound/core/hrtimer.c snd_hrtimer_callback() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
CAPPED_DATA 0 timer 1
DATA_SOURCE 0 timer $0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 irq

arch/x86/kvm/i8254.c hrtimer_start_expires() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
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
DATA_SOURCE 0 timer $0
PREEMPT_ADD
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

kernel/time/timer_list.c print_timer() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
DATA_SOURCE 0 timer $2

kernel/time/timer_list.c print_timer() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
DATA_SOURCE 0 timer $2

net/sched/sch_taprio.c taprio_start_sched() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &q->current_entry_lock
LOCK2 bh
LOCK2 flags
TYPE_LOCK (struct taprio_sched)->current_entry_lock

io_uring/wait.c hrtimer_start_expires() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 479328946022166608
PARAM_VALUE 0 timer->node.expires 0-s64max
DATA_SOURCE 0 timer $0
MEM_ZERO 0 timer

kernel/time/itimer.c hrtimer_start_expires() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PARAM_VALUE 0 timer->node.expires (-9223372036854775807)-s64max
BUF_SIZE 0 timer 80
DATA_SOURCE 0 timer $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 irq
HALF_LOCKED2 &sighand->siglock
HALF_LOCKED2 &task->sighand->siglock
HALF_LOCKED2 &tsk->sighand->siglock

drivers/pps/generators/pps_gen_tio.c hrtimer_callback() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
CAPPED_DATA 0 timer 1
DATA_SOURCE 0 timer $0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &tio->lock
HALF_LOCKED2 irq
TYPE_LOCK (struct pps_tio)->lock

kernel/sched/build_policy.c hrtimer_start_expires() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PARAM_VALUE 0 timer->node.expires (-9223372036854775807)-s64max
DATA_SOURCE 0 timer $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &rt_b->rt_runtime_lock
TYPE_LOCK (struct rt_bandwidth)->rt_runtime_lock

kernel/time/hrtimer.c __hrtimer_start_range_ns() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
CAPPED_DATA 0 timer 1
DATA_SOURCE 0 timer $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 timer->_softexpires s64min-s64max
LOCK2 &timer->base->cpu_base->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct hrtimer_cpu_base)->lock

kernel/time/hrtimer.c enqueue_hrtimer() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PARAM_VALUE 0 timer->node.expires 0
CAPPED_DATA 0 timer 1
DATA_SOURCE 0 timer $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &cpu_base->lock
HALF_LOCKED2 &new_base->lock
HALF_LOCKED2 &old_base->lock
HALF_LOCKED2 &timer->base->cpu_base->lock
HALF_LOCKED2 irq
TYPE_LOCK (struct hrtimer_cpu_base)->lock

kernel/time/hrtimer.c hrtimer_forward() -> hrtimer_get_expires()

Type Parameter Key Value
BUF_SIZE 0 timer (-1),80
BUF_SIZE 0 timer (-1),80
DATA_SOURCE 0 timer $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 timer->node.node.node.__rb_parent_color 0-u64max
HALF_LOCKED2 &ctx->wqh.lock
HALF_LOCKED2 &gpwm->lock
HALF_LOCKED2 &mbox->poll_hrt_lock
HALF_LOCKED2 &op->bcm_rx_update_lock
HALF_LOCKED2 &po->sk.sk_receive_queue.lock
HALF_LOCKED2 &ppd->cca_timer_lock
HALF_LOCKED2 &timr->it_lock
HALF_LOCKED2 &tio->lock
HALF_LOCKED2 &x->lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 irq
HALF_LOCKED2 rcu_read

kernel/time/hrtimer.c hrtimer_forward() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
BUF_SIZE 0 timer (-1),80
BUF_SIZE 0 timer (-1),80
DATA_SOURCE 0 timer $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 timer->node.node.node.__rb_parent_color 0-u64max
HALF_LOCKED2 &ctx->wqh.lock
HALF_LOCKED2 &gpwm->lock
HALF_LOCKED2 &mbox->poll_hrt_lock
HALF_LOCKED2 &op->bcm_rx_update_lock
HALF_LOCKED2 &po->sk.sk_receive_queue.lock
HALF_LOCKED2 &ppd->cca_timer_lock
HALF_LOCKED2 &timr->it_lock
HALF_LOCKED2 &tio->lock
HALF_LOCKED2 &x->lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 irq
HALF_LOCKED2 rcu_read

kernel/time/hrtimer.c hrtimer_nanosleep() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 6221740963720155136
MEM_ZERO 0 timer

kernel/time/hrtimer.c hrtimer_reprogram() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
DATA_SOURCE 0 timer $0
NOSPEC 0 timer->_softexpires
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 timer->_softexpires s64min-s64max
HALF_LOCKED2 &cpu_base->lock
HALF_LOCKED2 &timer->base->cpu_base->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct hrtimer_cpu_base)->lock

kernel/time/hrtimer.c hrtimer_start_expires_user() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
DATA_SOURCE 0 timer $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 timer->_softexpires s64min-(-2),0-s64max
USER_DATA 0 timer->node.expires 0-9223372035999999999[c]
HALF_LOCKED2 &ctx->uring_lock
HALF_LOCKED2 &hb->lock

kernel/time/hrtimer.c hrtimer_suitable_target() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PARAM_VALUE 0 timer->node.expires 0-s64max
BUF_SIZE 0 timer->base (-1),1024
CAPPED_DATA 0 timer 1
DATA_SOURCE 0 timer $0
NOSPEC 0 timer->_softexpires
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 timer->_softexpires s64min-s64max
HALF_LOCKED2 &new_base->cpu_base->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq

net/can/bcm.c hrtimer_start_expires() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
DATA_SOURCE 0 timer $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 sk
HALF_LOCKED2 &vq->mutex

arch/x86/kvm/xen.c hrtimer_start_expires() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
DATA_SOURCE 0 timer $0
LOCK2 &vcpu->kvm->arch.xen.xen_lock
LOCK2 &vcpu->mutex
TYPE_LOCK (struct kvm_vcpu)->mutex
TYPE_LOCK (struct kvm_xen)->xen_lock

kernel/time/posix-timers.c hrtimer_start_expires_user() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
BUF_SIZE 0 timer 80
DATA_SOURCE 0 timer $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &timr->it_lock
HALF_LOCKED2 irq

kernel/sched/fair.c hrtimer_start_expires() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PARAM_VALUE 0 timer->node.expires (-9223372036854775807)-s64max
DATA_SOURCE 0 timer $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &cfs_b->lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 irq

arch/x86/kvm/lapic.c hrtimer_start_expires() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
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
DATA_SOURCE 0 timer $0
PREEMPT_ADD
LOCK2 &vcpu->kvm->srcu
LOCK2 &vcpu->mutex
TYPE_LOCK (struct kvm)->srcu
TYPE_LOCK (struct kvm_vcpu)->mutex

drivers/pwm/pwm-gpio.c pwm_gpio_timer() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
CAPPED_DATA 0 timer 1
DATA_SOURCE 0 timer $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 &gpwm->lock
LOCK2 irq
TYPE_LOCK (struct pwm_gpio)->lock

kernel/time/tick-sched.c hrtimer_start_expires() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PARAM_VALUE 0 timer->node.expires (-9223372036854775807)-s64max
DATA_SOURCE 0 timer $0
MEM_ZERO 0 timer
RX_PATH
TASK_NOT_RUNNING

kernel/time/tick-sched.c tick_nohz_lowres_handler() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PARAM_VALUE 0 timer->node.expires (-9223372036854775807)-s64max
RX_PATH
TASK_NOT_RUNNING

kernel/time/tick-sched.c tick_nohz_stop_tick() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PREEMPT_ADD
LOCK2 irq

kernel/time/tick-sched.c tick_nohz_stop_tick() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PREEMPT_ADD
LOCK2 irq

kernel/time/tick-sched.c tick_nohz_stop_tick() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PREEMPT_ADD
LOCK2 irq

kernel/time/tick-sched.c tick_nohz_stop_tick() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PREEMPT_ADD
LOCK2 irq

kernel/time/tick-sched.c tick_setup_sched_timer() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PARAM_VALUE 0 timer->node.expires (-9223372036854775807)-s64max
MEM_ZERO 0 timer
RX_PATH
TASK_NOT_RUNNING

sound/drivers/aloop.c loopback_hrtimer_dpcm_info() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &seq->lock
LOCK2 _T->lock
TYPE_LOCK (struct seq_file)->lock

drivers/block/null_blk/main.c hrtimer_start_expires() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
DATA_SOURCE 0 timer $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 __tag_set->srcu
HALF_LOCKED2 rcu_read

drivers/i2c/busses/i2c-imx.c hrtimer_start_expires() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PARAM_VALUE 0 timer->node.expires (-9223372036854775807)-s64max
DATA_SOURCE 0 timer $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
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 hrtimer_start_expires() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PARAM_VALUE 0 timer->node.expires (-9223372036854775807)-s64max
BUF_SIZE 0 timer 80
DATA_SOURCE 0 timer $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &cpc->hrtimer_lock
LOCK2 flags
TYPE_LOCK (struct perf_cpu_pmu_context)->hrtimer_lock

fs/timerfd.c timerfd_hrtimer_restart() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PARAM_VALUE 0 timer->node.expires (-9223372036854775807)-s64max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &ctx->wqh.lock
LOCK2 irq
TYPE_LOCK (struct wait_queue_head)->lock

drivers/net/wireless/virtual/mac80211_hwsim_nan.c hwsim_nan_get_timer_tsf() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 irq

drivers/char/hw_random/timeriomem-rng.c hrtimer_start_expires() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PARAM_VALUE 0 timer->node.expires (-9223372036854775807)-s64max
DATA_SOURCE 0 timer $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &reading_mutex

arch/x86/kvm/vmx/vmx.c hrtimer_start_expires() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
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
DATA_SOURCE 0 timer $0

kernel/sched/core.c hrtick_needs_rearm() -> hrtimer_get_expires()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
BUF_SIZE 0 timer (-1),80
BUF_SIZE 0 timer (-1),80
DATA_SOURCE 0 timer $0
RX_PATH
TASK_NOT_RUNNING