DoxigAlpha

perf_event_attr

Fields of this type

Fields

#
type:PERF.TYPE
Major type: hardware/software/tracepoint/etc.
size:u32
Size of the attr structure, for fwd/bwd compat.
config:u64
Type specific configuration information.
sample_period_or_freq:u64
= 0
sample_type:u64
= 0
read_format:u64
= 0
flags:packed struct { /// off by default disabled: bool = false, /// children inherit it inherit: bool = false, /// must always be on PMU pinned: bool = false, /// only group on PMU exclusive: bool = false, /// don't count user exclude_user: bool = false, /// ditto kernel exclude_kernel: bool = false, /// ditto hypervisor exclude_hv: bool = false, /// don't count when idle exclude_idle: bool = false, /// include mmap data mmap: bool = false, /// include comm data comm: bool = false, /// use freq, not period freq: bool = false, /// per task counts inherit_stat: bool = false, /// next exec enables enable_on_exec: bool = false, /// trace fork/exit task: bool = false, /// wakeup_watermark watermark: bool = false, /// precise_ip: /// /// 0 - SAMPLE_IP can have arbitrary skid /// 1 - SAMPLE_IP must have constant skid /// 2 - SAMPLE_IP requested to have 0 skid /// 3 - SAMPLE_IP must have 0 skid /// /// See also PERF_RECORD_MISC_EXACT_IP /// skid constraint precise_ip: u2 = 0, /// non-exec mmap data mmap_data: bool = false, /// sample_type all events sample_id_all: bool = false, /// don't count in host exclude_host: bool = false, /// don't count in guest exclude_guest: bool = false, /// exclude kernel callchains exclude_callchain_kernel: bool = false, /// exclude user callchains exclude_callchain_user: bool = false, /// include mmap with inode data mmap2: bool = false, /// flag comm events that are due to an exec comm_exec: bool = false, /// use @clockid for time fields use_clockid: bool = false, /// context switch data context_switch: bool = false, /// Write ring buffer from end to beginning write_backward: bool = false, /// include namespaces data namespaces: bool = false, /// include ksymbol events ksymbol: bool = false, /// include BPF events bpf_event: bool = false, /// generate AUX records instead of events aux_output: bool = false, /// include cgroup events cgroup: bool = false, /// include text poke events text_poke: bool = false, /// use build ID in mmap2 events build_id: bool = false, /// children only inherit if cloned with CLONE_THREAD inherit_thread: bool = false, /// event is removed from task on exec remove_on_exec: bool = false, /// send synchronous SIGTRAP on event sigtrap: bool = false, __reserved_1: u26 = 0, }
= .{}
wakeup_events_or_watermark:u32
wakeup every n events, or
bp_type:u32
= 0
config1:u64
This field is also used for:
config2:u64
This field is also used for:
branch_sample_type:u64
enum perf_branch_sample_type
sample_regs_user:u64
Defines set of user regs to dump on samples.
sample_stack_user:u32
Defines size of the user stack to dump on samples.
clockid:clockid_t
= .REALTIME
sample_regs_intr:u64
Defines set of regs to dump for each sample
aux_watermark:u32
Wakeup watermark for AUX area
sample_max_stack:u16
= 0
__reserved_2:u16
Align to u64
aux_sample_size:u32
= 0
aux_action:packed struct(u32) { /// start AUX area tracing paused start_paused: bool = false, /// on overflow, pause AUX area tracing pause: bool = false, /// on overflow, resume AUX area tracing @"resume": bool = false, __reserved_3: u29 = 0, }
= .{}
sig_data:u64
User provided data if sigtrap == true
config3:u64
Extension of config2