Defined in 2 files as a function:

Referenced in 1 files:

Smatch caller information:

kernel/time/timekeeping.c __timekeeping_advance() -> tk_clock_read()

Type Parameter Key Value
PARAM_VALUE 0 tkr 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &tkd->lock
HALF_LOCKED2 irq

kernel/time/timekeeping.c get_device_system_crosststamp() -> tk_clock_read()

Type Parameter Key Value
PARAM_VALUE 0 tkr 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &adapter->ptm_lock

kernel/time/timekeeping.c halt_fast_timekeeper() -> tk_clock_read()

Type Parameter Key Value
PARAM_VALUE 0 tkr 7993997016906715520
PARAM_VALUE 0 tkr->clock 4096-ptr_max
PARAM_VALUE 0 tkr->xtime_nsec 0-18446744073709551614
BUF_SIZE 0 tkr 56
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags
HALF_LOCKED2 global &tick_freeze_lock
HALF_LOCKED2 irq

kernel/time/timekeeping.c timekeeping_forward_now() -> tk_clock_read()

Type Parameter Key Value
PARAM_VALUE 0 tkr 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &tkd->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq

kernel/time/timekeeping.c timekeeping_get_ns() -> tk_clock_read()

Type Parameter Key Value
PARAM_VALUE 0 tkr 4096-ptr_max
BUF_SIZE 0 tkr (-1),56
BUF_SIZE 0 tkr (-1),56
DATA_SOURCE 0 tkr $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &base->lock
HALF_LOCKED2 irq

kernel/time/timekeeping.c timekeeping_resume() -> tk_clock_read()

Type Parameter Key Value
PARAM_VALUE 0 tkr 7993997016906715520
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags
HALF_LOCKED2 global &tick_freeze_lock
HALF_LOCKED2 irq

kernel/time/timekeeping.c tk_setup_internals() -> tk_clock_read()

Type Parameter Key Value
PARAM_VALUE 0 tkr 4096-ptr_max
PARAM_VALUE 0 tkr->clock 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &tkd->lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 irq