Linux Perf
auxtrace.h File Reference
#include <sys/types.h>
#include <errno.h>
#include <stdbool.h>
#include <stddef.h>
#include <linux/list.h>
#include <linux/perf_event.h>
#include <linux/types.h>
#include "../perf.h"
#include "event.h"
#include "session.h"
#include "debug.h"
Include dependency graph for auxtrace.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  itrace_synth_opts
 
struct  auxtrace_index_entry
 
struct  auxtrace_index
 
struct  auxtrace
 
struct  auxtrace_buffer
 
struct  auxtrace_queue
 
struct  auxtrace_queues
 
struct  auxtrace_heap_item
 
struct  auxtrace_heap
 
struct  auxtrace_mmap
 
struct  auxtrace_mmap_params
 
struct  auxtrace_record
 
struct  addr_filter
 
struct  addr_filters
 

Macros

#define PERF_AUXTRACE_INDEX_ENTRY_COUNT   256
 
#define perf_event__process_auxtrace_info   0
 
#define perf_event__process_auxtrace   0
 
#define perf_event__process_auxtrace_error   0
 

Enumerations

enum  auxtrace_type {
  PERF_AUXTRACE_UNKNOWN, PERF_AUXTRACE_INTEL_PT, PERF_AUXTRACE_INTEL_BTS, PERF_AUXTRACE_CS_ETM,
  PERF_AUXTRACE_ARM_SPE
}
 
enum  itrace_period_type { PERF_ITRACE_PERIOD_INSTRUCTIONS, PERF_ITRACE_PERIOD_TICKS, PERF_ITRACE_PERIOD_NANOSECS }
 

Functions

static struct auxtrace_recordauxtrace_record__init (struct perf_evlist *evlist __maybe_unused, int *err)
 
static void auxtrace_record__free (struct auxtrace_record *itr __maybe_unused)
 
static int perf_event__synthesize_auxtrace_info (struct auxtrace_record *itr __maybe_unused, struct perf_tool *tool __maybe_unused, struct perf_session *session __maybe_unused, perf_event__handler_t process __maybe_unused)
 
static int auxtrace_record__options (struct auxtrace_record *itr __maybe_unused, struct perf_evlist *evlist __maybe_unused, struct record_opts *opts __maybe_unused)
 
static void perf_session__auxtrace_error_inc (struct perf_session *session __maybe_unused, union perf_event *event __maybe_unused)
 
static void events_stats__auxtrace_error_warn (const struct events_stats *stats __maybe_unused)
 
static int itrace_parse_synth_opts (const struct option *opt __maybe_unused, const char *str __maybe_unused, int unset __maybe_unused)
 
static int auxtrace_parse_snapshot_options (struct auxtrace_record *itr __maybe_unused, struct record_opts *opts __maybe_unused, const char *str)
 
static int auxtrace__process_event (struct perf_session *session __maybe_unused, union perf_event *event __maybe_unused, struct perf_sample *sample __maybe_unused, struct perf_tool *tool __maybe_unused)
 
static int auxtrace__flush_events (struct perf_session *session __maybe_unused, struct perf_tool *tool __maybe_unused)
 
static void auxtrace__free_events (struct perf_session *session __maybe_unused)
 
static void auxtrace_cache__free (struct auxtrace_cache *auxtrace_cache __maybe_unused)
 
static void auxtrace__free (struct perf_session *session __maybe_unused)
 
static int auxtrace_index__write (int fd __maybe_unused, struct list_head *head __maybe_unused)
 
static int auxtrace_index__process (int fd __maybe_unused, u64 size __maybe_unused, struct perf_session *session __maybe_unused, bool needs_swap __maybe_unused)
 
static void auxtrace_index__free (struct list_head *head __maybe_unused)
 
static int auxtrace_parse_filters (struct perf_evlist *evlist __maybe_unused)
 
int auxtrace_mmap__mmap (struct auxtrace_mmap *mm, struct auxtrace_mmap_params *mp, void *userpg, int fd)
 
void auxtrace_mmap__munmap (struct auxtrace_mmap *mm)
 
void auxtrace_mmap_params__init (struct auxtrace_mmap_params *mp, off_t auxtrace_offset, unsigned int auxtrace_pages, bool auxtrace_overwrite)
 
void auxtrace_mmap_params__set_idx (struct auxtrace_mmap_params *mp, struct perf_evlist *evlist, int idx, bool per_cpu)
 

Macro Definition Documentation

◆ PERF_AUXTRACE_INDEX_ENTRY_COUNT

#define PERF_AUXTRACE_INDEX_ENTRY_COUNT   256

Definition at line 115 of file auxtrace.h.

◆ perf_event__process_auxtrace

#define perf_event__process_auxtrace   0

Definition at line 612 of file auxtrace.h.

◆ perf_event__process_auxtrace_error

#define perf_event__process_auxtrace_error   0

Definition at line 613 of file auxtrace.h.

◆ perf_event__process_auxtrace_info

#define perf_event__process_auxtrace_info   0

Definition at line 611 of file auxtrace.h.

Enumeration Type Documentation

◆ auxtrace_type

Enumerator
PERF_AUXTRACE_UNKNOWN 
PERF_AUXTRACE_INTEL_PT 
PERF_AUXTRACE_INTEL_BTS 
PERF_AUXTRACE_CS_ETM 
PERF_AUXTRACE_ARM_SPE 

Definition at line 41 of file auxtrace.h.

◆ itrace_period_type

Enumerator
PERF_ITRACE_PERIOD_INSTRUCTIONS 
PERF_ITRACE_PERIOD_TICKS 
PERF_ITRACE_PERIOD_NANOSECS 

Definition at line 49 of file auxtrace.h.

Function Documentation

◆ auxtrace__flush_events()

static int auxtrace__flush_events ( struct perf_session *session  __maybe_unused,
struct perf_tool *tool  __maybe_unused 
)
inlinestatic

Definition at line 659 of file auxtrace.h.

◆ auxtrace__free()

static void auxtrace__free ( struct perf_session *session  __maybe_unused)
inlinestatic

Definition at line 676 of file auxtrace.h.

◆ auxtrace__free_events()

static void auxtrace__free_events ( struct perf_session *session  __maybe_unused)
inlinestatic

Definition at line 666 of file auxtrace.h.

◆ auxtrace__process_event()

static int auxtrace__process_event ( struct perf_session *session  __maybe_unused,
union perf_event *event  __maybe_unused,
struct perf_sample *sample  __maybe_unused,
struct perf_tool *tool  __maybe_unused 
)
inlinestatic

Definition at line 650 of file auxtrace.h.

◆ auxtrace_cache__free()

static void auxtrace_cache__free ( struct auxtrace_cache *auxtrace_cache  __maybe_unused)
inlinestatic

Definition at line 671 of file auxtrace.h.

◆ auxtrace_index__free()

static void auxtrace_index__free ( struct list_head *head  __maybe_unused)
inlinestatic

Definition at line 697 of file auxtrace.h.

◆ auxtrace_index__process()

static int auxtrace_index__process ( int fd  __maybe_unused,
u64 size  __maybe_unused,
struct perf_session *session  __maybe_unused,
bool needs_swap  __maybe_unused 
)
inlinestatic

Definition at line 688 of file auxtrace.h.

◆ auxtrace_index__write()

static int auxtrace_index__write ( int fd  __maybe_unused,
struct list_head *head  __maybe_unused 
)
inlinestatic

Definition at line 681 of file auxtrace.h.

◆ auxtrace_mmap__mmap()

int auxtrace_mmap__mmap ( struct auxtrace_mmap mm,
struct auxtrace_mmap_params mp,
void *  userpg,
int  fd 
)

Definition at line 69 of file auxtrace.c.

◆ auxtrace_mmap__munmap()

void auxtrace_mmap__munmap ( struct auxtrace_mmap mm)

Definition at line 108 of file auxtrace.c.

◆ auxtrace_mmap_params__init()

void auxtrace_mmap_params__init ( struct auxtrace_mmap_params mp,
off_t  auxtrace_offset,
unsigned int  auxtrace_pages,
bool  auxtrace_overwrite 
)

Definition at line 116 of file auxtrace.c.

◆ auxtrace_mmap_params__set_idx()

void auxtrace_mmap_params__set_idx ( struct auxtrace_mmap_params mp,
struct perf_evlist evlist,
int  idx,
bool  per_cpu 
)

Definition at line 132 of file auxtrace.c.

Here is the call graph for this function:

◆ auxtrace_parse_filters()

static int auxtrace_parse_filters ( struct perf_evlist *evlist  __maybe_unused)
inlinestatic

Definition at line 702 of file auxtrace.h.

Here is the call graph for this function:

◆ auxtrace_parse_snapshot_options()

static int auxtrace_parse_snapshot_options ( struct auxtrace_record *itr  __maybe_unused,
struct record_opts *opts  __maybe_unused,
const char *  str 
)
inlinestatic

Definition at line 639 of file auxtrace.h.

◆ auxtrace_record__free()

static void auxtrace_record__free ( struct auxtrace_record *itr  __maybe_unused)
inlinestatic

Definition at line 590 of file auxtrace.h.

◆ auxtrace_record__init()

static struct auxtrace_record* auxtrace_record__init ( struct perf_evlist *evlist  __maybe_unused,
int *  err 
)
static

Definition at line 582 of file auxtrace.h.

◆ auxtrace_record__options()

static int auxtrace_record__options ( struct auxtrace_record *itr  __maybe_unused,
struct perf_evlist *evlist  __maybe_unused,
struct record_opts *opts  __maybe_unused 
)
inlinestatic

Definition at line 604 of file auxtrace.h.

◆ events_stats__auxtrace_error_warn()

static void events_stats__auxtrace_error_warn ( const struct events_stats *stats  __maybe_unused)
inlinestatic

Definition at line 624 of file auxtrace.h.

◆ itrace_parse_synth_opts()

static int itrace_parse_synth_opts ( const struct option *opt  __maybe_unused,
const char *str  __maybe_unused,
int unset  __maybe_unused 
)
inlinestatic

Definition at line 630 of file auxtrace.h.

◆ perf_event__synthesize_auxtrace_info()

static int perf_event__synthesize_auxtrace_info ( struct auxtrace_record *itr  __maybe_unused,
struct perf_tool *tool  __maybe_unused,
struct perf_session *session  __maybe_unused,
perf_event__handler_t process  __maybe_unused 
)
inlinestatic

Definition at line 595 of file auxtrace.h.

◆ perf_session__auxtrace_error_inc()

static void perf_session__auxtrace_error_inc ( struct perf_session *session  __maybe_unused,
union perf_event *event  __maybe_unused 
)
inlinestatic

Definition at line 616 of file auxtrace.h.