Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

kernel/events/core.c __perf_event_read() -> perf_pmu_read()

Type Parameter Key Value
PARAM_VALUE 0 event 4096-ptr_max
PARAM_VALUE 0 event->cgrp 0,4096-ptr_max
PARAM_VALUE 0 event->ctx 4096-ptr_max
PARAM_VALUE 0 event->group_leader 4096-ptr_max
PARAM_VALUE 0 event->state 1
CAPPED_DATA 0 event 1
CAPPED_DATA 0 event->group_leader 1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &ctx->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct perf_event_context)->lock

kernel/events/core.c __perf_event_read() -> perf_pmu_read()

Type Parameter Key Value
PARAM_VALUE 0 event 4096-ptr_max
PARAM_VALUE 0 event->cgrp 0,4096-ptr_max
PARAM_VALUE 0 event->ctx 4096-ptr_max
PARAM_VALUE 0 event->group_leader 4096-ptr_max
PARAM_VALUE 0 event->pmu_ctx 4096-ptr_max
PARAM_VALUE 0 event->pmu_ctx->pmu 4096-ptr_max
PARAM_VALUE 0 event->state 1
CAPPED_DATA 0 event 1
CAPPED_DATA 0 event->group_leader 1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &ctx->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct perf_event_context)->lock

kernel/events/core.c __perf_event_read() -> perf_pmu_read()

Type Parameter Key Value
PARAM_VALUE 0 event 4096-ptr_max
CAPPED_DATA 0 &event->sibling_list 1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &ctx->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct perf_event_context)->lock

kernel/events/core.c __perf_event_sync_stat() -> perf_pmu_read()

Type Parameter Key Value
PARAM_VALUE 0 event 4096-ptr_max
PARAM_VALUE 0 event->attr.inherit_stat 1
DATA_SOURCE 0 event $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &ctx->lock
LOCK2 &next_ctx->lock
LOCK2 irq
LOCK2 rcu_read
TYPE_LOCK (struct perf_event_context)->lock

kernel/events/core.c perf_output_read_group() -> perf_pmu_read()

Type Parameter Key Value
PARAM_VALUE 0 event 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 event->hw.aux_config 0-u64max
HOST_DATA 0 event->hw.aux_paused 0-u32max
HOST_DATA 0 event->hw.branch_reg.alloc s32min-s32max
HOST_DATA 0 event->hw.branch_reg.config 0-u64max
HOST_DATA 0 event->hw.branch_reg.idx s32min-s32max
HOST_DATA 0 event->hw.branch_reg.reg 0-u32max
HOST_DATA 0 event->hw.conf 0-u64max
HOST_DATA 0 event->hw.conf1 0-u64max
HOST_DATA 0 event->hw.config 0-u64max
HOST_DATA 0 event->hw.config1 0-u64max
HOST_DATA 0 event->hw.config_base 0-u64max
HOST_DATA 0 event->hw.dyn_constraint 0-u64max
HOST_DATA 0 event->hw.event_base 0-u64max
HOST_DATA 0 event->hw.event_base_rdpmc s32min-s32max
HOST_DATA 0 event->hw.extra_reg.alloc s32min-s32max
HOST_DATA 0 event->hw.extra_reg.config 0-u64max
HOST_DATA 0 event->hw.extra_reg.idx s32min-s32max
HOST_DATA 0 event->hw.extra_reg.reg 0-u32max
HOST_DATA 0 event->hw.flags s32min-s32max
HOST_DATA 0 event->hw.hrtimer._softexpires s64min-s64max
HOST_DATA 0 event->hw.hrtimer.is_hard 0-1
HOST_DATA 0 event->hw.hrtimer.is_lazy 0-1
HOST_DATA 0 event->hw.hrtimer.is_queued 0-1
HOST_DATA 0 event->hw.hrtimer.is_rel 0-1
HOST_DATA 0 event->hw.hrtimer.is_soft 0-1
HOST_DATA 0 event->hw.hrtimer.node.expires s64min-s64max
HOST_DATA 0 event->hw.hrtimer.node.node.node.__rb_parent_color 0-u64max
HOST_DATA 0 event->hw.idx s32min-s32max
HOST_DATA 0 event->hw.info.address 0-u64max
HOST_DATA 0 event->hw.info.len 0-255
HOST_DATA 0 event->hw.info.mask 0-u64max
HOST_DATA 0 event->hw.info.type 0-255
HOST_DATA 0 event->hw.iommu_bank 0-255
HOST_DATA 0 event->hw.iommu_cntr 0-255
HOST_DATA 0 event->hw.last_cpu s32min-s32max
HOST_DATA 0 event->hw.last_period 0-u64max
HOST_DATA 0 event->hw.last_tag 0-u64max
HOST_DATA 0 event->hw.padding 0-u16max
HOST_DATA 0 event->hw.period_left.a.a.counter s64min-s64max
HOST_DATA 0 event->hw.prev_count.a.a.counter s64min-s64max
HOST_DATA 0 event->hw.ptsc 0-u64max
HOST_DATA 0 event->hw.pwr_acc 0-u64max
HOST_DATA 0 event->hw.saved_metric 0-u64max
HOST_DATA 0 event->hw.saved_slots 0-u64max
UNITS 0 event unit_byte
LOCK2 flags
LOCK2 rcu_read
HALF_LOCKED2 &parent_event->child_mutex

kernel/events/core.c perf_output_read_group() -> perf_pmu_read()

Type Parameter Key Value
PARAM_VALUE 0 event 4096-ptr_max
CAPPED_DATA 0 &event->sibling_list 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 event unit_byte
LOCK2 flags
LOCK2 rcu_read
HALF_LOCKED2 &parent_event->child_mutex