Linux Perf
event.h File Reference
#include <limits.h>
#include <stdio.h>
#include <linux/kernel.h>
#include "../perf.h"
#include "build-id.h"
#include "perf_regs.h"
Include dependency graph for event.h:

Go to the source code of this file.

Classes

struct  mmap_event
 
struct  mmap2_event
 
struct  comm_event
 
struct  namespaces_event
 
struct  fork_event
 
struct  lost_event
 
struct  lost_samples_event
 
struct  read_event
 
struct  throttle_event
 
struct  sample_event
 
struct  regs_dump
 
struct  stack_dump
 
struct  sample_read_value
 
struct  sample_read
 
struct  ip_callchain
 
struct  branch_flags
 
struct  branch_entry
 
struct  branch_stack
 
struct  perf_sample
 
struct  build_id_event
 
struct  perf_synth_intel_ptwrite
 
struct  perf_synth_intel_mwait
 
struct  perf_synth_intel_pwre
 
struct  perf_synth_intel_exstop
 
struct  perf_synth_intel_pwrx
 
struct  perf_synth_intel_cbr
 
struct  events_stats
 
struct  cpu_map_entries
 
struct  cpu_map_mask
 
struct  cpu_map_data
 
struct  cpu_map_event
 
struct  attr_event
 
struct  event_update_event_cpus
 
struct  event_update_event_scale
 
struct  event_update_event
 
struct  perf_trace_event_type
 
struct  event_type_event
 
struct  tracing_data_event
 
struct  id_index_entry
 
struct  id_index_event
 
struct  auxtrace_info_event
 
struct  auxtrace_event
 
struct  auxtrace_error_event
 
struct  aux_event
 
struct  itrace_start_event
 
struct  context_switch_event
 
struct  thread_map_event_entry
 
struct  thread_map_event
 
struct  stat_config_event_entry
 
struct  stat_config_event
 
struct  stat_event
 
struct  stat_round_event
 
struct  time_conv_event
 
struct  feature_event
 
union  perf_event
 

Macros

#define PERF_SAMPLE_MASK
 
#define PERF_SAMPLE_MAX_SIZE   (1 << 16)
 
#define PERF_IP_FLAG_CHARS   "bcrosyiABEx"
 
#define PERF_BRANCH_MASK
 
#define MAX_INSN   16
 
#define PERF_MEM_DATA_SRC_NONE
 
#define PERF_TYPE_SYNTH   (INT_MAX + 1U)
 
#define perf_synth__raw_size(d)   (sizeof(d) - 4)
 
#define perf_sample__bad_synth_size(s, d)   ((s)->raw_size < sizeof(d) - 4)
 
#define MAX_EVENT_NAME   64
 
#define MAX_AUXTRACE_ERROR_MSG   64
 

Typedefs

typedef int(* perf_event__handler_t) (struct perf_tool *tool, union perf_event *event, struct perf_sample *sample, struct machine *machine)
 

Enumerations

enum  {
  PERF_IP_FLAG_BRANCH = 1ULL << 0, PERF_IP_FLAG_CALL = 1ULL << 1, PERF_IP_FLAG_RETURN = 1ULL << 2, PERF_IP_FLAG_CONDITIONAL = 1ULL << 3,
  PERF_IP_FLAG_SYSCALLRET = 1ULL << 4, PERF_IP_FLAG_ASYNC = 1ULL << 5, PERF_IP_FLAG_INTERRUPT = 1ULL << 6, PERF_IP_FLAG_TX_ABORT = 1ULL << 7,
  PERF_IP_FLAG_TRACE_BEGIN = 1ULL << 8, PERF_IP_FLAG_TRACE_END = 1ULL << 9, PERF_IP_FLAG_IN_TX = 1ULL << 10
}
 
enum  perf_user_event_type {
  PERF_RECORD_USER_TYPE_START = 64, PERF_RECORD_HEADER_ATTR = 64, PERF_RECORD_HEADER_EVENT_TYPE = 65, PERF_RECORD_HEADER_TRACING_DATA = 66,
  PERF_RECORD_HEADER_BUILD_ID = 67, PERF_RECORD_FINISHED_ROUND = 68, PERF_RECORD_ID_INDEX = 69, PERF_RECORD_AUXTRACE_INFO = 70,
  PERF_RECORD_AUXTRACE = 71, PERF_RECORD_AUXTRACE_ERROR = 72, PERF_RECORD_THREAD_MAP = 73, PERF_RECORD_CPU_MAP = 74,
  PERF_RECORD_STAT_CONFIG = 75, PERF_RECORD_STAT = 76, PERF_RECORD_STAT_ROUND = 77, PERF_RECORD_EVENT_UPDATE = 78,
  PERF_RECORD_TIME_CONV = 79, PERF_RECORD_HEADER_FEATURE = 80, PERF_RECORD_HEADER_MAX
}
 
enum  auxtrace_error_type { PERF_AUXTRACE_ERROR_ITRACE = 1, PERF_AUXTRACE_ERROR_MAX }
 
enum  perf_synth_id {
  PERF_SYNTH_INTEL_PTWRITE, PERF_SYNTH_INTEL_MWAIT, PERF_SYNTH_INTEL_PWRE, PERF_SYNTH_INTEL_EXSTOP,
  PERF_SYNTH_INTEL_PWRX, PERF_SYNTH_INTEL_CBR
}
 
enum  { PERF_CPU_MAP__CPUS = 0, PERF_CPU_MAP__MASK = 1 }
 
enum  { PERF_EVENT_UPDATE__UNIT = 0, PERF_EVENT_UPDATE__SCALE = 1, PERF_EVENT_UPDATE__NAME = 2, PERF_EVENT_UPDATE__CPUS = 3 }
 
enum  { PERF_STAT_CONFIG_TERM__AGGR_MODE = 0, PERF_STAT_CONFIG_TERM__INTERVAL = 1, PERF_STAT_CONFIG_TERM__SCALE = 2, PERF_STAT_CONFIG_TERM__MAX = 3 }
 
enum  { PERF_STAT_ROUND_TYPE__INTERVAL = 0, PERF_STAT_ROUND_TYPE__FINAL = 1 }
 

Functions

static void * perf_sample__synth_ptr (struct perf_sample *sample)
 
static void * perf_synth__raw_data (void *p)
 
void perf_event__print_totals (void)
 
int perf_event__synthesize_thread_map (struct perf_tool *tool, struct thread_map *threads, perf_event__handler_t process, struct machine *machine, bool mmap_data, unsigned int proc_map_timeout)
 
int perf_event__synthesize_thread_map2 (struct perf_tool *tool, struct thread_map *threads, perf_event__handler_t process, struct machine *machine)
 
int perf_event__synthesize_cpu_map (struct perf_tool *tool, struct cpu_map *cpus, perf_event__handler_t process, struct machine *machine)
 
int perf_event__synthesize_threads (struct perf_tool *tool, perf_event__handler_t process, struct machine *machine, bool mmap_data, unsigned int proc_map_timeout, unsigned int nr_threads_synthesize)
 
int perf_event__synthesize_kernel_mmap (struct perf_tool *tool, perf_event__handler_t process, struct machine *machine)
 
int perf_event__synthesize_stat_config (struct perf_tool *tool, struct perf_stat_config *config, perf_event__handler_t process, struct machine *machine)
 
void perf_event__read_stat_config (struct perf_stat_config *config, struct stat_config_event *event)
 
int perf_event__synthesize_stat (struct perf_tool *tool, u32 cpu, u32 thread, u64 id, struct perf_counts_values *count, perf_event__handler_t process, struct machine *machine)
 
int perf_event__synthesize_stat_round (struct perf_tool *tool, u64 time, u64 type, perf_event__handler_t process, struct machine *machine)
 
int perf_event__synthesize_modules (struct perf_tool *tool, perf_event__handler_t process, struct machine *machine)
 
int perf_event__process_comm (struct perf_tool *tool, union perf_event *event, struct perf_sample *sample, struct machine *machine)
 
int perf_event__process_lost (struct perf_tool *tool, union perf_event *event, struct perf_sample *sample, struct machine *machine)
 
int perf_event__process_lost_samples (struct perf_tool *tool, union perf_event *event, struct perf_sample *sample, struct machine *machine)
 
int perf_event__process_aux (struct perf_tool *tool, union perf_event *event, struct perf_sample *sample, struct machine *machine)
 
int perf_event__process_itrace_start (struct perf_tool *tool, union perf_event *event, struct perf_sample *sample, struct machine *machine)
 
int perf_event__process_switch (struct perf_tool *tool, union perf_event *event, struct perf_sample *sample, struct machine *machine)
 
int perf_event__process_namespaces (struct perf_tool *tool, union perf_event *event, struct perf_sample *sample, struct machine *machine)
 
int perf_event__process_mmap (struct perf_tool *tool, union perf_event *event, struct perf_sample *sample, struct machine *machine)
 
int perf_event__process_mmap2 (struct perf_tool *tool, union perf_event *event, struct perf_sample *sample, struct machine *machine)
 
int perf_event__process_fork (struct perf_tool *tool, union perf_event *event, struct perf_sample *sample, struct machine *machine)
 
int perf_event__process_exit (struct perf_tool *tool, union perf_event *event, struct perf_sample *sample, struct machine *machine)
 
int perf_tool__process_synth_event (struct perf_tool *tool, union perf_event *event, struct machine *machine, perf_event__handler_t process)
 
int perf_event__process (struct perf_tool *tool, union perf_event *event, struct perf_sample *sample, struct machine *machine)
 
int machine__resolve (struct machine *machine, struct addr_location *al, struct perf_sample *sample)
 
void addr_location__put (struct addr_location *al)
 
bool is_bts_event (struct perf_event_attr *attr)
 
bool sample_addr_correlates_sym (struct perf_event_attr *attr)
 
void thread__resolve (struct thread *thread, struct addr_location *al, struct perf_sample *sample)
 
const char * perf_event__name (unsigned int id)
 
size_t perf_event__sample_event_size (const struct perf_sample *sample, u64 type, u64 read_format)
 
int perf_event__synthesize_sample (union perf_event *event, u64 type, u64 read_format, const struct perf_sample *sample)
 
pid_t perf_event__synthesize_comm (struct perf_tool *tool, union perf_event *event, pid_t pid, perf_event__handler_t process, struct machine *machine)
 
int perf_event__synthesize_namespaces (struct perf_tool *tool, union perf_event *event, pid_t pid, pid_t tgid, perf_event__handler_t process, struct machine *machine)
 
int perf_event__synthesize_mmap_events (struct perf_tool *tool, union perf_event *event, pid_t pid, pid_t tgid, perf_event__handler_t process, struct machine *machine, bool mmap_data, unsigned int proc_map_timeout)
 
int perf_event__synthesize_extra_kmaps (struct perf_tool *tool, perf_event__handler_t process, struct machine *machine)
 
size_t perf_event__fprintf_comm (union perf_event *event, FILE *fp)
 
size_t perf_event__fprintf_mmap (union perf_event *event, FILE *fp)
 
size_t perf_event__fprintf_mmap2 (union perf_event *event, FILE *fp)
 
size_t perf_event__fprintf_task (union perf_event *event, FILE *fp)
 
size_t perf_event__fprintf_aux (union perf_event *event, FILE *fp)
 
size_t perf_event__fprintf_itrace_start (union perf_event *event, FILE *fp)
 
size_t perf_event__fprintf_switch (union perf_event *event, FILE *fp)
 
size_t perf_event__fprintf_thread_map (union perf_event *event, FILE *fp)
 
size_t perf_event__fprintf_cpu_map (union perf_event *event, FILE *fp)
 
size_t perf_event__fprintf_namespaces (union perf_event *event, FILE *fp)
 
size_t perf_event__fprintf (union perf_event *event, FILE *fp)
 
int kallsyms__get_function_start (const char *kallsyms_filename, const char *symbol_name, u64 *addr)
 
void * cpu_map_data__alloc (struct cpu_map *map, size_t *size, u16 *type, int *max)
 
void cpu_map_data__synthesize (struct cpu_map_data *data, struct cpu_map *map, u16 type, int max)
 
void event_attr_init (struct perf_event_attr *attr)
 
int perf_event_paranoid (void)
 

Variables

int sysctl_perf_event_max_stack
 
int sysctl_perf_event_max_contexts_per_stack
 

Macro Definition Documentation

◆ MAX_AUXTRACE_ERROR_MSG

#define MAX_AUXTRACE_ERROR_MSG   64

Definition at line 521 of file event.h.

◆ MAX_EVENT_NAME

#define MAX_EVENT_NAME   64

Definition at line 473 of file event.h.

◆ MAX_INSN

#define MAX_INSN   16

Definition at line 189 of file event.h.

◆ PERF_BRANCH_MASK

#define PERF_BRANCH_MASK
Value:
(\
PERF_IP_FLAG_BRANCH |\
PERF_IP_FLAG_CALL |\
PERF_IP_FLAG_RETURN |\
PERF_IP_FLAG_CONDITIONAL |\
PERF_IP_FLAG_SYSCALLRET |\
PERF_IP_FLAG_ASYNC |\
PERF_IP_FLAG_INTERRUPT |\
PERF_IP_FLAG_TX_ABORT |\
PERF_IP_FLAG_TRACE_BEGIN |\
PERF_IP_FLAG_TRACE_END)

Definition at line 177 of file event.h.

◆ PERF_IP_FLAG_CHARS

#define PERF_IP_FLAG_CHARS   "bcrosyiABEx"

Definition at line 175 of file event.h.

◆ PERF_MEM_DATA_SRC_NONE

#define PERF_MEM_DATA_SRC_NONE
Value:
(PERF_MEM_S(OP, NA) |\
PERF_MEM_S(LVL, NA) |\
PERF_MEM_S(SNOOP, NA) |\
PERF_MEM_S(LOCK, NA) |\
PERF_MEM_S(TLB, NA))

Definition at line 219 of file event.h.

◆ perf_sample__bad_synth_size

#define perf_sample__bad_synth_size (   s,
 
)    ((s)->raw_size < sizeof(d) - 4)

Definition at line 379 of file event.h.

◆ PERF_SAMPLE_MASK

#define PERF_SAMPLE_MASK
Value:
(PERF_SAMPLE_IP | PERF_SAMPLE_TID | \
PERF_SAMPLE_TIME | PERF_SAMPLE_ADDR | \
PERF_SAMPLE_ID | PERF_SAMPLE_STREAM_ID | \
PERF_SAMPLE_CPU | PERF_SAMPLE_PERIOD | \
PERF_SAMPLE_IDENTIFIER)

Definition at line 87 of file event.h.

◆ PERF_SAMPLE_MAX_SIZE

#define PERF_SAMPLE_MAX_SIZE   (1 << 16)

Definition at line 95 of file event.h.

◆ perf_synth__raw_size

#define perf_synth__raw_size (   d)    (sizeof(d) - 4)

Definition at line 377 of file event.h.

◆ PERF_TYPE_SYNTH

#define PERF_TYPE_SYNTH   (INT_MAX + 1U)

Definition at line 261 of file event.h.

Typedef Documentation

◆ perf_event__handler_t

typedef int(* perf_event__handler_t) (struct perf_tool *tool, union perf_event *event, struct perf_sample *sample, struct machine *machine)

Definition at line 664 of file event.h.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
PERF_IP_FLAG_BRANCH 
PERF_IP_FLAG_CALL 
PERF_IP_FLAG_RETURN 
PERF_IP_FLAG_CONDITIONAL 
PERF_IP_FLAG_SYSCALLRET 
PERF_IP_FLAG_ASYNC 
PERF_IP_FLAG_INTERRUPT 
PERF_IP_FLAG_TX_ABORT 
PERF_IP_FLAG_TRACE_BEGIN 
PERF_IP_FLAG_TRACE_END 
PERF_IP_FLAG_IN_TX 

Definition at line 161 of file event.h.

◆ anonymous enum

anonymous enum
Enumerator
PERF_CPU_MAP__CPUS 
PERF_CPU_MAP__MASK 

Definition at line 418 of file event.h.

◆ anonymous enum

anonymous enum
Enumerator
PERF_EVENT_UPDATE__UNIT 
PERF_EVENT_UPDATE__SCALE 
PERF_EVENT_UPDATE__NAME 
PERF_EVENT_UPDATE__CPUS 

Definition at line 450 of file event.h.

◆ anonymous enum

anonymous enum
Enumerator
PERF_STAT_CONFIG_TERM__AGGR_MODE 
PERF_STAT_CONFIG_TERM__INTERVAL 
PERF_STAT_CONFIG_TERM__SCALE 
PERF_STAT_CONFIG_TERM__MAX 

Definition at line 564 of file event.h.

◆ anonymous enum

anonymous enum
Enumerator
PERF_STAT_ROUND_TYPE__INTERVAL 
PERF_STAT_ROUND_TYPE__FINAL 

Definition at line 599 of file event.h.

◆ auxtrace_error_type

Enumerator
PERF_AUXTRACE_ERROR_ITRACE 
PERF_AUXTRACE_ERROR_MAX 

Definition at line 255 of file event.h.

◆ perf_synth_id

Enumerator
PERF_SYNTH_INTEL_PTWRITE 
PERF_SYNTH_INTEL_MWAIT 
PERF_SYNTH_INTEL_PWRE 
PERF_SYNTH_INTEL_EXSTOP 
PERF_SYNTH_INTEL_PWRX 
PERF_SYNTH_INTEL_CBR 

Definition at line 264 of file event.h.

◆ perf_user_event_type

Enumerator
PERF_RECORD_USER_TYPE_START 
PERF_RECORD_HEADER_ATTR 
PERF_RECORD_HEADER_EVENT_TYPE 
PERF_RECORD_HEADER_TRACING_DATA 
PERF_RECORD_HEADER_BUILD_ID 
PERF_RECORD_FINISHED_ROUND 
PERF_RECORD_ID_INDEX 
PERF_RECORD_AUXTRACE_INFO 
PERF_RECORD_AUXTRACE 
PERF_RECORD_AUXTRACE_ERROR 
PERF_RECORD_THREAD_MAP 
PERF_RECORD_CPU_MAP 
PERF_RECORD_STAT_CONFIG 
PERF_RECORD_STAT 
PERF_RECORD_STAT_ROUND 
PERF_RECORD_EVENT_UPDATE 
PERF_RECORD_TIME_CONV 
PERF_RECORD_HEADER_FEATURE 
PERF_RECORD_HEADER_MAX 

Definition at line 233 of file event.h.

Function Documentation

◆ addr_location__put()

void addr_location__put ( struct addr_location al)

Definition at line 1661 of file event.c.

◆ cpu_map_data__alloc()

void* cpu_map_data__alloc ( struct cpu_map map,
size_t *  size,
u16 *  type,
int *  max 
)

Definition at line 1047 of file event.c.

Here is the call graph for this function:

◆ cpu_map_data__synthesize()

void cpu_map_data__synthesize ( struct cpu_map_data data,
struct cpu_map map,
u16  type,
int  max 
)

Definition at line 1080 of file event.c.

Here is the call graph for this function:

◆ event_attr_init()

void event_attr_init ( struct perf_event_attr *  attr)

Definition at line 83 of file util.c.

◆ is_bts_event()

bool is_bts_event ( struct perf_event_attr *  attr)

Definition at line 1666 of file event.c.

◆ kallsyms__get_function_start()

int kallsyms__get_function_start ( const char *  kallsyms_filename,
const char *  symbol_name,
u64 *  addr 
)

Definition at line 879 of file event.c.

Here is the call graph for this function:

◆ machine__resolve()

int machine__resolve ( struct machine machine,
struct addr_location al,
struct perf_sample sample 
)

Definition at line 1601 of file event.c.

Here is the call graph for this function:

◆ perf_event__fprintf()

size_t perf_event__fprintf ( union perf_event event,
FILE *  fp 
)

Definition at line 1461 of file event.c.

Here is the call graph for this function:

◆ perf_event__fprintf_aux()

size_t perf_event__fprintf_aux ( union perf_event event,
FILE *  fp 
)

Definition at line 1424 of file event.c.

◆ perf_event__fprintf_comm()

size_t perf_event__fprintf_comm ( union perf_event event,
FILE *  fp 
)

Definition at line 1234 of file event.c.

◆ perf_event__fprintf_cpu_map()

size_t perf_event__fprintf_cpu_map ( union perf_event event,
FILE *  fp 
)

Definition at line 1369 of file event.c.

Here is the call graph for this function:

◆ perf_event__fprintf_itrace_start()

size_t perf_event__fprintf_itrace_start ( union perf_event event,
FILE *  fp 
)

Definition at line 1434 of file event.c.

◆ perf_event__fprintf_mmap()

size_t perf_event__fprintf_mmap ( union perf_event event,
FILE *  fp 
)

Definition at line 1329 of file event.c.

◆ perf_event__fprintf_mmap2()

size_t perf_event__fprintf_mmap2 ( union perf_event event,
FILE *  fp 
)

Definition at line 1338 of file event.c.

◆ perf_event__fprintf_namespaces()

size_t perf_event__fprintf_namespaces ( union perf_event event,
FILE *  fp 
)

Definition at line 1246 of file event.c.

Here is the call graph for this function:

◆ perf_event__fprintf_switch()

size_t perf_event__fprintf_switch ( union perf_event event,
FILE *  fp 
)

Definition at line 1440 of file event.c.

◆ perf_event__fprintf_task()

size_t perf_event__fprintf_task ( union perf_event event,
FILE *  fp 
)

Definition at line 1401 of file event.c.

◆ perf_event__fprintf_thread_map()

size_t perf_event__fprintf_thread_map ( union perf_event event,
FILE *  fp 
)

Definition at line 1353 of file event.c.

Here is the call graph for this function:

◆ perf_event__name()

const char* perf_event__name ( unsigned int  id)

Definition at line 75 of file event.c.

◆ perf_event__print_totals()

void perf_event__print_totals ( void  )

◆ perf_event__process()

int perf_event__process ( struct perf_tool tool,
union perf_event event,
struct perf_sample sample,
struct machine machine 
)

◆ perf_event__process_aux()

int perf_event__process_aux ( struct perf_tool tool,
union perf_event event,
struct perf_sample sample,
struct machine machine 
)

◆ perf_event__process_comm()

int perf_event__process_comm ( struct perf_tool tool,
union perf_event event,
struct perf_sample sample,
struct machine machine 
)

◆ perf_event__process_exit()

int perf_event__process_exit ( struct perf_tool tool,
union perf_event event,
struct perf_sample sample,
struct machine machine 
)

◆ perf_event__process_fork()

int perf_event__process_fork ( struct perf_tool tool,
union perf_event event,
struct perf_sample sample,
struct machine machine 
)

◆ perf_event__process_itrace_start()

int perf_event__process_itrace_start ( struct perf_tool tool,
union perf_event event,
struct perf_sample sample,
struct machine machine 
)

◆ perf_event__process_lost()

int perf_event__process_lost ( struct perf_tool tool,
union perf_event event,
struct perf_sample sample,
struct machine machine 
)

◆ perf_event__process_lost_samples()

int perf_event__process_lost_samples ( struct perf_tool tool,
union perf_event event,
struct perf_sample sample,
struct machine machine 
)

◆ perf_event__process_mmap()

int perf_event__process_mmap ( struct perf_tool tool,
union perf_event event,
struct perf_sample sample,
struct machine machine 
)

◆ perf_event__process_mmap2()

int perf_event__process_mmap2 ( struct perf_tool tool,
union perf_event event,
struct perf_sample sample,
struct machine machine 
)

◆ perf_event__process_namespaces()

int perf_event__process_namespaces ( struct perf_tool tool,
union perf_event event,
struct perf_sample sample,
struct machine machine 
)

◆ perf_event__process_switch()

int perf_event__process_switch ( struct perf_tool tool,
union perf_event event,
struct perf_sample sample,
struct machine machine 
)

◆ perf_event__read_stat_config()

void perf_event__read_stat_config ( struct perf_stat_config config,
struct stat_config_event event 
)

Definition at line 1210 of file event.c.

◆ perf_event__sample_event_size()

size_t perf_event__sample_event_size ( const struct perf_sample sample,
u64  type,
u64  read_format 
)

Definition at line 2382 of file evsel.c.

◆ perf_event__synthesize_comm()

pid_t perf_event__synthesize_comm ( struct perf_tool tool,
union perf_event event,
pid_t  pid,
perf_event__handler_t  process,
struct machine machine 
)

Definition at line 220 of file event.c.

Here is the call graph for this function:

◆ perf_event__synthesize_cpu_map()

int perf_event__synthesize_cpu_map ( struct perf_tool tool,
struct cpu_map cpus,
perf_event__handler_t  process,
struct machine machine 
)

Definition at line 1115 of file event.c.

Here is the call graph for this function:

◆ perf_event__synthesize_extra_kmaps()

int perf_event__synthesize_extra_kmaps ( struct perf_tool tool,
perf_event__handler_t  process,
struct machine machine 
)

◆ perf_event__synthesize_kernel_mmap()

int perf_event__synthesize_kernel_mmap ( struct perf_tool tool,
perf_event__handler_t  process,
struct machine machine 
)

Definition at line 953 of file event.c.

Here is the call graph for this function:

◆ perf_event__synthesize_mmap_events()

int perf_event__synthesize_mmap_events ( struct perf_tool tool,
union perf_event event,
pid_t  pid,
pid_t  tgid,
perf_event__handler_t  process,
struct machine machine,
bool  mmap_data,
unsigned int  proc_map_timeout 
)

Definition at line 320 of file event.c.

Here is the call graph for this function:

◆ perf_event__synthesize_modules()

int perf_event__synthesize_modules ( struct perf_tool tool,
perf_event__handler_t  process,
struct machine machine 
)

Definition at line 461 of file event.c.

Here is the call graph for this function:

◆ perf_event__synthesize_namespaces()

int perf_event__synthesize_namespaces ( struct perf_tool tool,
union perf_event event,
pid_t  pid,
pid_t  tgid,
perf_event__handler_t  process,
struct machine machine 
)

Definition at line 249 of file event.c.

Here is the call graph for this function:

◆ perf_event__synthesize_sample()

int perf_event__synthesize_sample ( union perf_event event,
u64  type,
u64  read_format,
const struct perf_sample sample 
)

Definition at line 2490 of file evsel.c.

Here is the call graph for this function:

◆ perf_event__synthesize_stat()

int perf_event__synthesize_stat ( struct perf_tool tool,
u32  cpu,
u32  thread,
u64  id,
struct perf_counts_values count,
perf_event__handler_t  process,
struct machine machine 
)

Definition at line 1171 of file event.c.

◆ perf_event__synthesize_stat_config()

int perf_event__synthesize_stat_config ( struct perf_tool tool,
struct perf_stat_config config,
perf_event__handler_t  process,
struct machine machine 
)

Definition at line 1133 of file event.c.

Here is the call graph for this function:

◆ perf_event__synthesize_stat_round()

int perf_event__synthesize_stat_round ( struct perf_tool tool,
u64  time,
u64  type,
perf_event__handler_t  process,
struct machine machine 
)

Definition at line 1193 of file event.c.

◆ perf_event__synthesize_thread_map()

int perf_event__synthesize_thread_map ( struct perf_tool tool,
struct thread_map threads,
perf_event__handler_t  process,
struct machine machine,
bool  mmap_data,
unsigned int  proc_map_timeout 
)

Definition at line 603 of file event.c.

Here is the call graph for this function:

◆ perf_event__synthesize_thread_map2()

int perf_event__synthesize_thread_map2 ( struct perf_tool tool,
struct thread_map threads,
perf_event__handler_t  process,
struct machine machine 
)

Definition at line 966 of file event.c.

Here is the call graph for this function:

◆ perf_event__synthesize_threads()

int perf_event__synthesize_threads ( struct perf_tool tool,
perf_event__handler_t  process,
struct machine machine,
bool  mmap_data,
unsigned int  proc_map_timeout,
unsigned int  nr_threads_synthesize 
)

Definition at line 767 of file event.c.

Here is the call graph for this function:

◆ perf_event_paranoid()

int perf_event_paranoid ( void  )

Definition at line 388 of file util.c.

◆ perf_sample__synth_ptr()

static void* perf_sample__synth_ptr ( struct perf_sample sample)
inlinestatic

Definition at line 367 of file event.h.

◆ perf_synth__raw_data()

static void* perf_synth__raw_data ( void *  p)
inlinestatic

Definition at line 372 of file event.h.

◆ perf_tool__process_synth_event()

int perf_tool__process_synth_event ( struct perf_tool tool,
union perf_event event,
struct machine machine,
perf_event__handler_t  process 
)

Definition at line 91 of file event.c.

◆ sample_addr_correlates_sym()

bool sample_addr_correlates_sym ( struct perf_event_attr *  attr)

Definition at line 1673 of file event.c.

Here is the call graph for this function:

◆ thread__resolve()

void thread__resolve ( struct thread thread,
struct addr_location al,
struct perf_sample sample 
)

Definition at line 1687 of file event.c.

Here is the call graph for this function:

Variable Documentation

◆ sysctl_perf_event_max_contexts_per_stack

int sysctl_perf_event_max_contexts_per_stack

Definition at line 63 of file util.c.

◆ sysctl_perf_event_max_stack

int sysctl_perf_event_max_stack

Definition at line 62 of file util.c.