Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 41 files:

Smatch caller information:

net/ipv4/tcp_ipv4.c tcp_clear_xmit_timers() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sk->__sk_common.skc_net.net->ipv4.ra_mutex
HALF_LOCKED2 &sk->__sk_common.skc_net.net->mctp.keys_lock
HALF_LOCKED2 &sk->sk_lock.slock
HALF_LOCKED2 sk

net/ipv4/tcp_ipv4.c tcp_clear_xmit_timers() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sk->__sk_common.skc_net.net->ipv4.ra_mutex
HALF_LOCKED2 &sk->__sk_common.skc_net.net->mctp.keys_lock
HALF_LOCKED2 &sk->sk_lock.slock
HALF_LOCKED2 sk

net/xfrm/xfrm_iptfs.c __iptfs_reassem_done() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &xtfs->drop_lock
TYPE_LOCK (struct xfrm_iptfs_data)->drop_lock

drivers/scsi/scsi_debug.c scsi_debug_stop_cmnd() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &to_be_aborted_sdsc->lock
LOCK2 irq
HALF_LOCKED2 __tag_set->srcu
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct sdebug_scsi_cmd)->lock

sound/core/hrtimer.c snd_hrtimer_stop() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &t->lock
HALF_LOCKED2 _T->flags
HALF_LOCKED2 _T->lock
HALF_LOCKED2 irq
TYPE_LOCK (struct snd_timer)->lock

drivers/infiniband/sw/rdmavt/qp.c rvt_stop_rc_timers() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &qp->s_lock
HALF_LOCKED2 &packet->qp->r_lock
HALF_LOCKED2 &qp->r_lock
HALF_LOCKED2 &qp->s_hlock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct rvt_qp)->r_lock
TYPE_LOCK (struct rvt_qp)->s_lock

kernel/time/tick-broadcast-hrtimer.c bc_shutdown() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 9175174382596812800
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 flags
HALF_LOCKED2 global &clockevents_lock
HALF_LOCKED2 global &tick_broadcast_lock
HALF_LOCKED2 irq

net/ipv4/tcp.c tcp_clear_xmit_timers() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sk->sk_lock.slock
HALF_LOCKED2 sk

net/ipv4/tcp.c tcp_clear_xmit_timers() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sk->sk_lock.slock
HALF_LOCKED2 sk

drivers/net/can/m_can/m_can.c m_can_disable_all_interrupts() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/iio/adc/ti-tsc2046.c tsc2046_adc_irq() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 flags

io_uring/timeout.c __io_disarm_linked_timeout() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &ctx->completion_lock
LOCK2 &ctx->timeout_lock
LOCK2 irq
HALF_LOCKED2 &ctx->uring_lock
TYPE_LOCK (struct io_ring_ctx)->completion_lock
TYPE_LOCK (struct io_ring_ctx)->timeout_lock

io_uring/timeout.c io_kill_timeout() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &ctx->timeout_lock
LOCK2 irq
HALF_LOCKED2 &ctx->completion_lock
HALF_LOCKED2 &ctx->uring_lock
TYPE_LOCK (struct io_ring_ctx)->timeout_lock

io_uring/timeout.c io_linked_timeout_update() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &ctx->timeout_lock
LOCK2 irq
TYPE_LOCK (struct io_ring_ctx)->timeout_lock

io_uring/timeout.c io_timeout_extract() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &ctx->timeout_lock
LOCK2 irq
HALF_LOCKED2 &ctx->completion_lock
TYPE_LOCK (struct io_ring_ctx)->timeout_lock

kernel/rseq.c rseq_cancel_slice_extension_timer() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PREEMPT_ADD
NOCHECK_CALL

net/ipv4/tcp_input.c tcp_sack_compress_send_ack() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sk->sk_lock.slock

kernel/time/itimer.c do_setitimer() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
BUF_SIZE 0 timer 80
PREEMPT_ADD <- disables preempt
LOCK2 &tsk->sighand->siglock
LOCK2 irq
TYPE_LOCK (struct sighand_struct)->siglock

block/bfq-iosched.c bfq_rq_enqueued() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &bfqd->lock
LOCK2 irq
TYPE_LOCK (struct bfq_data)->lock

block/bfq-iosched.c bfq_select_queue() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &bfqd->lock
LOCK2 irq
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 __tag_set->srcu
TYPE_LOCK (struct bfq_data)->lock

kernel/sched/build_policy.c cancel_dl_timer() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
DATA_SOURCE 0 timer $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

kernel/sched/build_policy.c dl_rq_change_utilization() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dl_b->lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 _T->rf.flags

kernel/sched/build_policy.c dl_server_stop() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 _T->lock
HALF_LOCKED2 _T->rf.flags
HALF_LOCKED2 irq
HALF_LOCKED2 rf.flags
HALF_LOCKED2 rq

kernel/sched/build_policy.c enqueue_dl_entity() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

kernel/sched/build_policy.c replenish_dl_entity() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

kernel/sched/build_policy.c update_curr_dl_se() -> hrtimer_try_to_cancel()

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

kernel/time/hrtimer.c hrtimer_cancel() -> hrtimer_try_to_cancel()

Type Parameter Key Value
DATA_SOURCE 0 timer $0

drivers/base/power/runtime.c pm_runtime_deactivate_timer() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dev->mutex
HALF_LOCKED2 &dev->power.lock
HALF_LOCKED2 irq

drivers/net/ethernet/stmicro/stmmac/stmmac_main.c stmmac_tx_timer_arm() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &nq->_xmit_lock
HALF_LOCKED2 rcu_read

block/bfq-wf2q.c __bfq_bfqd_reset_in_service() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &bfqd->lock
HALF_LOCKED2 &bfqd->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq

kernel/time/posix-timers.c common_hrtimer_try_to_cancel() -> hrtimer_try_to_cancel()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 irq

sound/drivers/aloop.c loopback_hrtimer_stop() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &cable->lock
HALF_LOCKED2 &substream->runtime->buffer_mutex
HALF_LOCKED2 &substream->self_group.lock
HALF_LOCKED2 &substream->self_group.mutex
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct loopback_cable)->lock

drivers/i2c/busses/i2c-imx.c i2c_imx_slave_handle() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &i2c_imx->slave_lock
LOCK2 irq
TYPE_LOCK (struct imx_i2c_struct)->slave_lock

drivers/tty/serial/8250/8250_port.c start_tx_rs485() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &_T->lock->lock
HALF_LOCKED2 &port->lock
HALF_LOCKED2 _T->flags
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq

drivers/tty/serial/imx.c imx_uart_start_tx() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &_T->lock->lock
HALF_LOCKED2 &port->lock
HALF_LOCKED2 &sport->port.lock
HALF_LOCKED2 _T->flags
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq

drivers/tty/serial/imx.c imx_uart_stop_tx() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ltq_port->lock
HALF_LOCKED2 &port->lock
HALF_LOCKED2 &port->lock
HALF_LOCKED2 &sport->port.lock
HALF_LOCKED2 &ssp->port.lock
HALF_LOCKED2 &state->uart_port->lock
HALF_LOCKED2 &tty->flow.lock
HALF_LOCKED2 &up->port.lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq

drivers/gpu/drm/drm_vblank.c drm_crtc_vblank_cancel_timer() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dev->vbl_lock
HALF_LOCKED2 &dev->vblank_time_lock

drivers/gpu/drm/drm_vblank.c drm_crtc_vblank_start_timer() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &dev->vbl_lock
LOCK2 &dev->vblank_time_lock
HALF_LOCKED2 &dev->event_lock
HALF_LOCKED2 irq
TYPE_LOCK (struct drm_device)->vbl_lock
TYPE_LOCK (struct drm_device)->vblank_time_lock

kernel/events/core.c perf_swevent_cancel_hrtimer() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer->base 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 timer->_softexpires s64min-s64max
HOST_DATA 0 timer->is_hard 0-1
HOST_DATA 0 timer->is_lazy 0-1
HOST_DATA 0 timer->is_queued 0-1
HOST_DATA 0 timer->is_rel 0-1
HOST_DATA 0 timer->is_soft 0-1
HOST_DATA 0 timer->node.expires s64min-s64max
HOST_DATA 0 timer->node.node.node.__rb_parent_color 1
HALF_LOCKED2 &ctx->lock
HALF_LOCKED2 &event->child_mutex
HALF_LOCKED2 _T->flags

fs/timerfd.c do_timerfd_settime() -> hrtimer_try_to_cancel()

Type Parameter Key Value
LOCK2 &ctx->wqh.lock
LOCK2 irq
TYPE_LOCK (struct wait_queue_head)->lock

drivers/usb/gadget/function/f_ncm.c package_for_tx() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &dev->lock
HALF_LOCKED2 &net->tx_global_lock
HALF_LOCKED2 &txq->_xmit_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct eth_dev)->lock

drivers/input/joystick/walkera0701.c walkera0701_irq_handler() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &port->cad_lock
TYPE_LOCK (struct parport)->cad_lock

kernel/time/alarmtimer.c alarm_try_to_cancel() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 timer->node.expires 0-9223372035999999999[c]
LOCK2 &base->lock
LOCK2 irq
HALF_LOCKED2 &ctx->wqh.lock
TYPE_LOCK (struct alarm_base)->lock

net/can/j1939/transport.c j1939_cancel_active_session() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &priv->active_session_list_lock
LOCK2 bh
HALF_LOCKED2 sk
TYPE_LOCK (struct j1939_priv)->active_session_list_lock

net/can/j1939/transport.c j1939_cancel_active_session() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &priv->active_session_list_lock
LOCK2 bh
HALF_LOCKED2 sk
TYPE_LOCK (struct j1939_priv)->active_session_list_lock

drivers/rtc/interface.c rtc_update_hrtimer() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &rtc->ops_lock

drivers/gpu/drm/i915/i915_request.c __rq_cancel_watchdog() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ce->timeline->mutex
HALF_LOCKED2 &tl->mutex
HALF_LOCKED2 rq->context->timeline->mutex

arch/x86/kvm/vmx/vmx.c vmx_migrate_timers() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
BUF_SIZE 0 timer 80

kernel/bpf/helpers.c bpf_async_cb_rcu_tasks_trace_free() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 bh
HALF_LOCKED2 rcu

kernel/bpf/helpers.c bpf_async_process_op() -> hrtimer_try_to_cancel()

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

kernel/bpf/helpers.c bpf_timer_cancel_async() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max

net/ipv4/tcp_output.c tcp_event_ack_sent() -> hrtimer_try_to_cancel()

Type Parameter Key Value
PARAM_VALUE 0 timer 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sk->sk_callback_lock
HALF_LOCKED2 &sk->sk_lock.slock
HALF_LOCKED2 sk