Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 7 files:

Smatch caller information:

kernel/time/posix-cpu-timers.c cleanup_timerqueue() -> timerqueue_del()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
PARAM_VALUE 1 node 1-u64max
DATA_SOURCE 0 head $0
DATA_SOURCE 1 node r timerqueue_getnext
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 irq
HALF_LOCKED2 &sighand->siglock
HALF_LOCKED2 global &tasklist_lock
TYPE_LOCK (struct sighand_struct)->siglock

kernel/time/posix-cpu-timers.c cpu_timer_dequeue() -> timerqueue_del()

Type Parameter Key Value
PARAM_VALUE 0 head 1-u64max
PARAM_VALUE 1 node 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &cw->mutex
HALF_LOCKED2 &tsk->sighand->siglock
HALF_LOCKED2 flags

drivers/rtc/class.c rtc_device_release() -> timerqueue_del()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
PARAM_VALUE 1 node 1-u64max
BUF_SIZE 0 head 16
DATA_SOURCE 1 node r timerqueue_getnext
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &rtc->ops_lock
TYPE_LOCK (struct rtc_device)->ops_lock

kernel/time/timer_migration.c tmigr_next_expired_groupevt() -> timerqueue_del()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
PARAM_VALUE 0 head->rb_root.rb_root.rb_node 4096-ptr_max
PARAM_VALUE 1 node 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &group->lock
LOCK2 irq
TYPE_LOCK (struct tmigr_group)->lock

kernel/time/timer_migration.c tmigr_next_groupevt() -> timerqueue_del()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
PARAM_VALUE 1 node 1-u64max
DATA_SOURCE 1 node r timerqueue_getnext
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &group->lock
HALF_LOCKED2 &group->lock
HALF_LOCKED2 irq
TYPE_LOCK (struct tmigr_group)->lock

kernel/time/timer_migration.c tmigr_update_events() -> timerqueue_del()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
PARAM_VALUE 1 node 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &group->lock
HALF_LOCKED2 &child->lock
TYPE_LOCK (struct tmigr_group)->lock

kernel/time/alarmtimer.c alarmtimer_dequeue() -> timerqueue_del()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
PARAM_VALUE 1 node 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 1 node->expires 0-9223372035999999999[c]
LOCK2 &base->lock
LOCK2 irq
TYPE_LOCK (struct alarm_base)->lock

kernel/time/alarmtimer.c alarmtimer_enqueue() -> timerqueue_del()

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

drivers/rtc/interface.c rtc_timer_do_work() -> timerqueue_del()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
NOCHECK_CALL
LOCK2 &rtc->ops_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct rtc_device)->ops_lock

drivers/rtc/interface.c rtc_timer_do_work() -> timerqueue_del()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
NOCHECK_CALL
LOCK2 &rtc->ops_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct rtc_device)->ops_lock

drivers/rtc/interface.c rtc_timer_enqueue() -> timerqueue_del()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
PARAM_VALUE 0 head->rb_root.rb_leftmost 4096-ptr_max
PARAM_VALUE 0 head->rb_root.rb_root.rb_node 4096-ptr_max
PARAM_VALUE 1 node 4096-ptr_max
PARAM_VALUE 1 node->node.__rb_parent_color 1
PARAM_VALUE 1 node->node.rb_left 4096-ptr_max
PARAM_VALUE 1 node->node.rb_right 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &rtc->ops_lock
TYPE_LOCK (struct rtc_device)->ops_lock

drivers/rtc/interface.c rtc_timer_remove() -> timerqueue_del()

Type Parameter Key Value
PARAM_VALUE 0 head 4096-ptr_max
PARAM_VALUE 1 node 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &rtc->ops_lock
TYPE_LOCK (struct rtc_device)->ops_lock