Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

kernel/time/timer.c __mod_timer() -> forward_timer_base()

Type Parameter Key Value
PARAM_VALUE 0 base 4096-ptr_max
DATA_SOURCE 0 base r lock_timer_base
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 flags
HALF_LOCKED2 global &watchdog_lock
HALF_LOCKED2 irq_flags

kernel/time/timer.c __mod_timer() -> forward_timer_base()

Type Parameter Key Value
PARAM_VALUE 0 base 4096-ptr_max
DATA_SOURCE 0 base r lock_timer_base
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 flags
HALF_LOCKED2 global &watchdog_lock
HALF_LOCKED2 irq_flags

kernel/time/timer.c __mod_timer() -> forward_timer_base()

Type Parameter Key Value
PARAM_VALUE 0 base 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 flags
LOCK2 0 &base->lock
HALF_LOCKED2 global &watchdog_lock
HALF_LOCKED2 irq_flags
TYPE_LOCK (struct timer_base)->lock

kernel/time/timer.c add_timer_on() -> forward_timer_base()

Type Parameter Key Value
PARAM_VALUE 0 base 4096-ptr_max
CAPPED_DATA 0 base 1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 flags
HALF_LOCKED2 flags
HALF_LOCKED2 global &clocksource_mutex
HALF_LOCKED2 global &vector_lock
HALF_LOCKED2 global &watchdog_lock
HALF_LOCKED2 irq_flags
HALF_LOCKED2 0 &base->lock

kernel/time/timer.c timers_dead_cpu() -> forward_timer_base()

Type Parameter Key Value
PARAM_VALUE 0 base 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &old_base->lock
LOCK2 irq
LOCK2 0 &base->lock
HALF_LOCKED2 global &cpuhp_state_mutex
TYPE_LOCK (struct timer_base)->lock