Linux Perf
pmu.h File Reference
#include <linux/bitmap.h>
#include <linux/compiler.h>
#include <linux/perf_event.h>
#include <stdbool.h>
#include "evsel.h"
#include "parse-events.h"
Include dependency graph for pmu.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  perf_pmu
 
struct  perf_pmu_info
 
struct  perf_pmu_alias
 

Macros

#define PERF_PMU_FORMAT_BITS   64
 
#define UNIT_MAX_LEN   31 /* max length for event unit name */
 

Enumerations

enum  { PERF_PMU_FORMAT_VALUE_CONFIG, PERF_PMU_FORMAT_VALUE_CONFIG1, PERF_PMU_FORMAT_VALUE_CONFIG2 }
 

Functions

struct perf_pmuperf_pmu__find (const char *name)
 
int perf_pmu__config (struct perf_pmu *pmu, struct perf_event_attr *attr, struct list_head *head_terms, struct parse_events_error *error)
 
int perf_pmu__config_terms (struct list_head *formats, struct perf_event_attr *attr, struct list_head *head_terms, bool zero, struct parse_events_error *error)
 
__u64 perf_pmu__format_bits (struct list_head *formats, const char *name)
 
int perf_pmu__check_alias (struct perf_pmu *pmu, struct list_head *head_terms, struct perf_pmu_info *info)
 
struct list_head * perf_pmu__alias (struct perf_pmu *pmu, struct list_head *head_terms)
 
int perf_pmu_wrap (void)
 
void perf_pmu_error (struct list_head *list, char *name, char const *msg)
 
int perf_pmu__new_format (struct list_head *list, char *name, int config, unsigned long *bits)
 
void perf_pmu__set_format (unsigned long *bits, long from, long to)
 
int perf_pmu__format_parse (char *dir, struct list_head *head)
 
struct perf_pmuperf_pmu__scan (struct perf_pmu *pmu)
 
void print_pmu_events (const char *event_glob, bool name_only, bool quiet, bool long_desc, bool details_flag)
 
bool pmu_have_event (const char *pname, const char *name)
 
int perf_pmu__scan_file (struct perf_pmu *pmu, const char *name, const char *fmt,...) __scanf(3
 
int int perf_pmu__test (void)
 
struct perf_event_attr * perf_pmu__get_default_config (struct perf_pmu *pmu)
 
struct pmu_events_mapperf_pmu__find_map (struct perf_pmu *pmu)
 

Macro Definition Documentation

◆ PERF_PMU_FORMAT_BITS

#define PERF_PMU_FORMAT_BITS   64

Definition at line 18 of file pmu.h.

◆ UNIT_MAX_LEN

#define UNIT_MAX_LEN   31 /* max length for event unit name */

Definition at line 44 of file pmu.h.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
PERF_PMU_FORMAT_VALUE_CONFIG 
PERF_PMU_FORMAT_VALUE_CONFIG1 
PERF_PMU_FORMAT_VALUE_CONFIG2 

Definition at line 12 of file pmu.h.

Function Documentation

◆ perf_pmu__alias()

struct list_head* perf_pmu__alias ( struct perf_pmu pmu,
struct list_head *  head_terms 
)

◆ perf_pmu__check_alias()

int perf_pmu__check_alias ( struct perf_pmu pmu,
struct list_head *  head_terms,
struct perf_pmu_info info 
)

Definition at line 1106 of file pmu.c.

Here is the call graph for this function:

◆ perf_pmu__config()

int perf_pmu__config ( struct perf_pmu pmu,
struct perf_event_attr *  attr,
struct list_head *  head_terms,
struct parse_events_error error 
)

Definition at line 1035 of file pmu.c.

Here is the call graph for this function:

◆ perf_pmu__config_terms()

int perf_pmu__config_terms ( struct list_head *  formats,
struct perf_event_attr *  attr,
struct list_head *  head_terms,
bool  zero,
struct parse_events_error error 
)

Definition at line 1014 of file pmu.c.

Here is the call graph for this function:

◆ perf_pmu__find()

struct perf_pmu* perf_pmu__find ( const char *  name)

Definition at line 778 of file pmu.c.

Here is the call graph for this function:

◆ perf_pmu__find_map()

struct pmu_events_map* perf_pmu__find_map ( struct perf_pmu pmu)

Definition at line 628 of file pmu.c.

Here is the call graph for this function:

◆ perf_pmu__format_bits()

__u64 perf_pmu__format_bits ( struct list_head *  formats,
const char *  name 
)

Definition at line 806 of file pmu.c.

Here is the call graph for this function:

◆ perf_pmu__format_parse()

int perf_pmu__format_parse ( char *  dir,
struct list_head *  head 
)

Definition at line 43 of file pmu.c.

Here is the call graph for this function:

◆ perf_pmu__get_default_config()

struct perf_event_attr* perf_pmu__get_default_config ( struct perf_pmu pmu)

◆ perf_pmu__new_format()

int perf_pmu__new_format ( struct list_head *  list,
char *  name,
int  config,
unsigned long *  bits 
)

Definition at line 1160 of file pmu.c.

Here is the call graph for this function:

◆ perf_pmu__scan()

struct perf_pmu* perf_pmu__scan ( struct perf_pmu pmu)

Definition at line 763 of file pmu.c.

Here is the call graph for this function:

◆ perf_pmu__scan_file()

int perf_pmu__scan_file ( struct perf_pmu pmu,
const char *  name,
const char *  fmt,
  ... 
)

◆ perf_pmu__set_format()

void perf_pmu__set_format ( unsigned long *  bits,
long  from,
long  to 
)

Definition at line 1177 of file pmu.c.

Here is the call graph for this function:

◆ perf_pmu__test()

int int perf_pmu__test ( void  )

◆ perf_pmu_error()

void perf_pmu_error ( struct list_head *  list,
char *  name,
char const *  msg 
)

◆ perf_pmu_wrap()

int perf_pmu_wrap ( void  )

◆ pmu_have_event()

bool pmu_have_event ( const char *  pname,
const char *  name 
)

Definition at line 1396 of file pmu.c.

Here is the call graph for this function:

◆ print_pmu_events()

void print_pmu_events ( const char *  event_glob,
bool  name_only,
bool  quiet,
bool  long_desc,
bool  details_flag 
)

Definition at line 1277 of file pmu.c.

Here is the call graph for this function: