Linux Perf
sort.c File Reference
#include <errno.h>
#include <inttypes.h>
#include <regex.h>
#include <linux/mman.h>
#include "sort.h"
#include "hist.h"
#include "comm.h"
#include "symbol.h"
#include "thread.h"
#include "evsel.h"
#include "evlist.h"
#include "strlist.h"
#include <traceevent/event-parse.h>
#include "mem-events.h"
#include <linux/kernel.h>
Include dependency graph for sort.c:

Go to the source code of this file.

Classes

struct  txbit
 
struct  sort_dimension
 
struct  hpp_dimension
 
struct  hpp_sort_entry
 
struct  hpp_dynamic_entry
 

Macros

#define DIM(d, n, func)   [d] = { .name = n, .entry = &(func) }
 
#define DIM(d, n, func)   [d - __SORT_BRANCH_STACK] = { .name = n, .entry = &(func) }
 
#define DIM(d, n, func)   [d - __SORT_MEMORY_MODE] = { .name = n, .entry = &(func) }
 
#define DIM(d, n)   { .name = n, .fmt = &perf_hpp__format[d], }
 
#define MK_SORT_ENTRY_CHK(key)
 

Functions

static int repsep_snprintf (char *bf, size_t size, const char *fmt,...)
 
static int64_t cmp_null (const void *l, const void *r)
 
static int64_t sort__thread_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int hist_entry__thread_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static int hist_entry__thread_filter (struct hist_entry *he, int type, const void *arg)
 
static int64_t sort__comm_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int64_t sort__comm_collapse (struct hist_entry *left, struct hist_entry *right)
 
static int64_t sort__comm_sort (struct hist_entry *left, struct hist_entry *right)
 
static int hist_entry__comm_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static int64_t _sort__dso_cmp (struct map *map_l, struct map *map_r)
 
static int64_t sort__dso_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int _hist_entry__dso_snprintf (struct map *map, char *bf, size_t size, unsigned int width)
 
static int hist_entry__dso_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static int hist_entry__dso_filter (struct hist_entry *he, int type, const void *arg)
 
static int64_t _sort__addr_cmp (u64 left_ip, u64 right_ip)
 
static int64_t _sort__sym_cmp (struct symbol *sym_l, struct symbol *sym_r)
 
static int64_t sort__sym_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int64_t sort__sym_sort (struct hist_entry *left, struct hist_entry *right)
 
static int _hist_entry__sym_snprintf (struct map *map, struct symbol *sym, u64 ip, char level, char *bf, size_t size, unsigned int width)
 
static int hist_entry__sym_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static int hist_entry__sym_filter (struct hist_entry *he, int type, const void *arg)
 
char * hist_entry__srcline (struct hist_entry *he)
 
static int64_t sort__srcline_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int hist_entry__srcline_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static char * addr_map_symbol__srcline (struct addr_map_symbol *ams)
 
static int64_t sort__srcline_from_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int hist_entry__srcline_from_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static int64_t sort__srcline_to_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int hist_entry__srcline_to_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static char * hist_entry__get_srcfile (struct hist_entry *e)
 
static int64_t sort__srcfile_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int hist_entry__srcfile_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static int64_t sort__parent_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int hist_entry__parent_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static int64_t sort__cpu_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int hist_entry__cpu_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static int64_t _sort__cgroup_dev_cmp (u64 left_dev, u64 right_dev)
 
static int64_t _sort__cgroup_inode_cmp (u64 left_ino, u64 right_ino)
 
static int64_t sort__cgroup_id_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int hist_entry__cgroup_id_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width __maybe_unused)
 
static int64_t sort__socket_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int hist_entry__socket_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static int hist_entry__socket_filter (struct hist_entry *he, int type, const void *arg)
 
static char * get_trace_output (struct hist_entry *he)
 
static int64_t sort__trace_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int hist_entry__trace_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static int64_t sort__dso_from_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int hist_entry__dso_from_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static int hist_entry__dso_from_filter (struct hist_entry *he, int type, const void *arg)
 
static int64_t sort__dso_to_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int hist_entry__dso_to_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static int hist_entry__dso_to_filter (struct hist_entry *he, int type, const void *arg)
 
static int64_t sort__sym_from_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int64_t sort__sym_to_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int hist_entry__sym_from_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static int hist_entry__sym_to_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static int hist_entry__sym_from_filter (struct hist_entry *he, int type, const void *arg)
 
static int hist_entry__sym_to_filter (struct hist_entry *he, int type, const void *arg)
 
static int64_t sort__mispredict_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int hist_entry__mispredict_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static int64_t sort__cycles_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int hist_entry__cycles_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
int64_t sort__daddr_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int hist_entry__daddr_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
int64_t sort__iaddr_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int hist_entry__iaddr_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static int64_t sort__dso_daddr_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int hist_entry__dso_daddr_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static int64_t sort__locked_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int hist_entry__locked_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static int64_t sort__tlb_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int hist_entry__tlb_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static int64_t sort__lvl_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int hist_entry__lvl_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static int64_t sort__snoop_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int hist_entry__snoop_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
int64_t sort__dcacheline_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int hist_entry__dcacheline_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static u64 he_weight (struct hist_entry *he)
 
static int64_t sort__local_weight_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int hist_entry__local_weight_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static int64_t sort__global_weight_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int hist_entry__global_weight_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static int64_t sort__phys_daddr_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int hist_entry__phys_daddr_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static int64_t sort__abort_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int hist_entry__abort_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static int64_t sort__in_tx_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int hist_entry__in_tx_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static int64_t sort__transaction_cmp (struct hist_entry *left, struct hist_entry *right)
 
static char * add_str (char *p, const char *str)
 
int hist_entry__transaction_len (void)
 
static int hist_entry__transaction_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static int64_t _sort__sym_size_cmp (struct symbol *sym_l, struct symbol *sym_r)
 
static int64_t sort__sym_size_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int _hist_entry__sym_size_snprintf (struct symbol *sym, char *bf, size_t bf_size, unsigned int width)
 
static int hist_entry__sym_size_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
static int64_t _sort__dso_size_cmp (struct map *map_l, struct map *map_r)
 
static int64_t sort__dso_size_cmp (struct hist_entry *left, struct hist_entry *right)
 
static int _hist_entry__dso_size_snprintf (struct map *map, char *bf, size_t bf_size, unsigned int width)
 
static int hist_entry__dso_size_snprintf (struct hist_entry *he, char *bf, size_t size, unsigned int width)
 
void perf_hpp__reset_sort_width (struct perf_hpp_fmt *fmt, struct hists *hists)
 
static int __sort__hpp_header (struct perf_hpp_fmt *fmt, struct perf_hpp *hpp, struct hists *hists, int line __maybe_unused, int *span __maybe_unused)
 
static int __sort__hpp_width (struct perf_hpp_fmt *fmt, struct perf_hpp *hpp __maybe_unused, struct hists *hists)
 
static int __sort__hpp_entry (struct perf_hpp_fmt *fmt, struct perf_hpp *hpp, struct hist_entry *he)
 
static int64_t __sort__hpp_cmp (struct perf_hpp_fmt *fmt, struct hist_entry *a, struct hist_entry *b)
 
static int64_t __sort__hpp_collapse (struct perf_hpp_fmt *fmt, struct hist_entry *a, struct hist_entry *b)
 
static int64_t __sort__hpp_sort (struct perf_hpp_fmt *fmt, struct hist_entry *a, struct hist_entry *b)
 
bool perf_hpp__is_sort_entry (struct perf_hpp_fmt *format)
 
static bool __sort__hpp_equal (struct perf_hpp_fmt *a, struct perf_hpp_fmt *b)
 
static void hse_free (struct perf_hpp_fmt *fmt)
 
static struct hpp_sort_entry__sort_dimension__alloc_hpp (struct sort_dimension *sd, int level)
 
static void hpp_free (struct perf_hpp_fmt *fmt)
 
static struct perf_hpp_fmt__hpp_dimension__alloc_hpp (struct hpp_dimension *hd, int level)
 
int hist_entry__filter (struct hist_entry *he, int type, const void *arg)
 
static int __sort_dimension__add_hpp_sort (struct sort_dimension *sd, struct perf_hpp_list *list, int level)
 
static int __sort_dimension__add_hpp_output (struct sort_dimension *sd, struct perf_hpp_list *list)
 
static int hde_width (struct hpp_dynamic_entry *hde)
 
static void update_dynamic_len (struct hpp_dynamic_entry *hde, struct hist_entry *he)
 
static int __sort__hde_header (struct perf_hpp_fmt *fmt, struct perf_hpp *hpp, struct hists *hists __maybe_unused, int line __maybe_unused, int *span __maybe_unused)
 
static int __sort__hde_width (struct perf_hpp_fmt *fmt, struct perf_hpp *hpp __maybe_unused, struct hists *hists __maybe_unused)
 
bool perf_hpp__defined_dynamic_entry (struct perf_hpp_fmt *fmt, struct hists *hists)
 
static int __sort__hde_entry (struct perf_hpp_fmt *fmt, struct perf_hpp *hpp, struct hist_entry *he)
 
static int64_t __sort__hde_cmp (struct perf_hpp_fmt *fmt, struct hist_entry *a, struct hist_entry *b)
 
bool perf_hpp__is_dynamic_entry (struct perf_hpp_fmt *fmt)
 
static bool __sort__hde_equal (struct perf_hpp_fmt *a, struct perf_hpp_fmt *b)
 
static void hde_free (struct perf_hpp_fmt *fmt)
 
static struct hpp_dynamic_entry__alloc_dynamic_entry (struct perf_evsel *evsel, struct format_field *field, int level)
 
struct perf_hpp_fmtperf_hpp_fmt__dup (struct perf_hpp_fmt *fmt)
 
static int parse_field_name (char *str, char **event, char **field, char **opt)
 
static struct perf_evselfind_evsel (struct perf_evlist *evlist, char *event_name)
 
static int __dynamic_dimension__add (struct perf_evsel *evsel, struct format_field *field, bool raw_trace, int level)
 
static int add_evsel_fields (struct perf_evsel *evsel, bool raw_trace, int level)
 
static int add_all_dynamic_fields (struct perf_evlist *evlist, bool raw_trace, int level)
 
static int add_all_matching_fields (struct perf_evlist *evlist, char *field_name, bool raw_trace, int level)
 
static int add_dynamic_entry (struct perf_evlist *evlist, const char *tok, int level)
 
static int __sort_dimension__add (struct sort_dimension *sd, struct perf_hpp_list *list, int level)
 
static int __hpp_dimension__add (struct hpp_dimension *hd, struct perf_hpp_list *list, int level)
 
static int __sort_dimension__add_output (struct perf_hpp_list *list, struct sort_dimension *sd)
 
static int __hpp_dimension__add_output (struct perf_hpp_list *list, struct hpp_dimension *hd)
 
int hpp_dimension__add_output (unsigned col)
 
int sort_dimension__add (struct perf_hpp_list *list, const char *tok, struct perf_evlist *evlist, int level)
 
static int setup_sort_list (struct perf_hpp_list *list, char *str, struct perf_evlist *evlist)
 
static const char * get_default_sort_order (struct perf_evlist *evlist)
 
static int setup_sort_order (struct perf_evlist *evlist)
 
static char * prefix_if_not_in (const char *pre, char *str)
 
static char * setup_overhead (char *keys)
 
static int __setup_sorting (struct perf_evlist *evlist)
 
void perf_hpp__set_elide (int idx, bool elide)
 
static bool __get_elide (struct strlist *list, const char *list_name, FILE *fp)
 
static bool get_elide (int idx, FILE *output)
 
void sort__setup_elide (FILE *output)
 
int output_field_add (struct perf_hpp_list *list, char *tok)
 
static int setup_output_list (struct perf_hpp_list *list, char *str)
 
void reset_dimensions (void)
 
bool is_strict_order (const char *order)
 
static int __setup_output_field (void)
 
int setup_sorting (struct perf_evlist *evlist)
 
void reset_output_field (void)
 

Variables

regex_t parent_regex
 
const char default_parent_pattern [] = "^sys_|^do_page_fault"
 
const char * parent_pattern = default_parent_pattern
 
const char * default_sort_order = "comm,dso,symbol"
 
const char default_branch_sort_order [] = "comm,dso_from,symbol_from,symbol_to,cycles"
 
const char default_mem_sort_order [] = "local_weight,mem,sym,dso,symbol_daddr,dso_daddr,snoop,tlb,locked"
 
const char default_top_sort_order [] = "dso,symbol"
 
const char default_diff_sort_order [] = "dso,symbol"
 
const char default_tracepoint_sort_order [] = "trace"
 
const char * sort_order
 
const char * field_order
 
regex_t ignore_callees_regex
 
int have_ignore_callees = 0
 
enum sort_mode sort__mode = SORT_MODE__NORMAL
 
struct sort_entry sort_thread
 
struct sort_entry sort_comm
 
struct sort_entry sort_dso
 
struct sort_entry sort_sym
 
struct sort_entry sort_srcline
 
struct sort_entry sort_srcline_from
 
struct sort_entry sort_srcline_to
 
static char no_srcfile [1]
 
struct sort_entry sort_srcfile
 
struct sort_entry sort_parent
 
struct sort_entry sort_cpu
 
struct sort_entry sort_cgroup_id
 
struct sort_entry sort_socket
 
struct sort_entry sort_trace
 
struct sort_entry sort_dso_from
 
struct sort_entry sort_dso_to
 
struct sort_entry sort_sym_from
 
struct sort_entry sort_sym_to
 
struct sort_entry sort_cycles
 
struct sort_entry sort_mispredict
 
struct sort_entry sort_local_weight
 
struct sort_entry sort_global_weight
 
struct sort_entry sort_mem_daddr_sym
 
struct sort_entry sort_mem_iaddr_sym
 
struct sort_entry sort_mem_daddr_dso
 
struct sort_entry sort_mem_locked
 
struct sort_entry sort_mem_tlb
 
struct sort_entry sort_mem_lvl
 
struct sort_entry sort_mem_snoop
 
struct sort_entry sort_mem_dcacheline
 
struct sort_entry sort_mem_phys_daddr
 
struct sort_entry sort_abort
 
struct sort_entry sort_in_tx
 
static struct txbit txbits []
 
struct sort_entry sort_transaction
 
struct sort_entry sort_sym_size
 
struct sort_entry sort_dso_size
 
static struct sort_dimension common_sort_dimensions []
 
static struct sort_dimension bstack_sort_dimensions []
 
static struct sort_dimension memory_sort_dimensions []
 
static struct hpp_dimension hpp_sort_dimensions []
 

Macro Definition Documentation

◆ DIM [1/4]

#define DIM (   d,
  n,
  func 
)    [d] = { .name = n, .entry = &(func) }

Definition at line 1620 of file sort.c.

◆ DIM [2/4]

#define DIM (   d,
  n,
  func 
)    [d - __SORT_BRANCH_STACK] = { .name = n, .entry = &(func) }

Definition at line 1620 of file sort.c.

◆ DIM [3/4]

#define DIM (   d,
  n,
  func 
)    [d - __SORT_MEMORY_MODE] = { .name = n, .entry = &(func) }

Definition at line 1620 of file sort.c.

◆ DIM [4/4]

#define DIM (   d,
 
)    { .name = n, .fmt = &perf_hpp__format[d], }

Definition at line 1620 of file sort.c.

◆ MK_SORT_ENTRY_CHK

#define MK_SORT_ENTRY_CHK (   key)
Value:
bool perf_hpp__is_ ## key ## _entry(struct perf_hpp_fmt *fmt) \
{ \
struct hpp_sort_entry *hse; \
return false; \
\
hse = container_of(fmt, struct hpp_sort_entry, hpp); \
return hse->se == &sort_ ## key ; \
}
const char * key
Definition: bpf-loader.c:196
if(!yyg->yy_init)
const char * fmt
Definition: dso.c:193
bool perf_hpp__is_sort_entry(struct perf_hpp_fmt *format)
Definition: sort.c:1726
Definition: sort.c:1635

Definition at line 1731 of file sort.c.

Function Documentation

◆ __alloc_dynamic_entry()

static struct hpp_dynamic_entry* __alloc_dynamic_entry ( struct perf_evsel evsel,
struct format_field *  field,
int  level 
)
static

Definition at line 2120 of file sort.c.

Here is the call graph for this function:

◆ __dynamic_dimension__add()

static int __dynamic_dimension__add ( struct perf_evsel evsel,
struct format_field *  field,
bool  raw_trace,
int  level 
)
static

Definition at line 2254 of file sort.c.

Here is the call graph for this function:

◆ __get_elide()

static bool __get_elide ( struct strlist list,
const char *  list_name,
FILE *  fp 
)
static

Definition at line 2769 of file sort.c.

Here is the call graph for this function:

◆ __hpp_dimension__add()

static int __hpp_dimension__add ( struct hpp_dimension hd,
struct perf_hpp_list list,
int  level 
)
static

Definition at line 2414 of file sort.c.

Here is the call graph for this function:

◆ __hpp_dimension__add_output()

static int __hpp_dimension__add_output ( struct perf_hpp_list list,
struct hpp_dimension hd 
)
static

Definition at line 2445 of file sort.c.

Here is the call graph for this function:

◆ __hpp_dimension__alloc_hpp()

static struct perf_hpp_fmt* __hpp_dimension__alloc_hpp ( struct hpp_dimension hd,
int  level 
)
static

Definition at line 1813 of file sort.c.

Here is the call graph for this function:

◆ __setup_output_field()

static int __setup_output_field ( void  )
static

Definition at line 2930 of file sort.c.

Here is the call graph for this function:

◆ __setup_sorting()

static int __setup_sorting ( struct perf_evlist evlist)
static

Definition at line 2706 of file sort.c.

Here is the call graph for this function:

◆ __sort__hde_cmp()

static int64_t __sort__hde_cmp ( struct perf_hpp_fmt fmt,
struct hist_entry a,
struct hist_entry b 
)
static

Definition at line 2059 of file sort.c.

Here is the call graph for this function:

◆ __sort__hde_entry()

static int __sort__hde_entry ( struct perf_hpp_fmt fmt,
struct perf_hpp hpp,
struct hist_entry he 
)
static

Definition at line 1997 of file sort.c.

Here is the call graph for this function:

◆ __sort__hde_equal()

static bool __sort__hde_equal ( struct perf_hpp_fmt a,
struct perf_hpp_fmt b 
)
static

Definition at line 2097 of file sort.c.

Here is the call graph for this function:

◆ __sort__hde_header()

static int __sort__hde_header ( struct perf_hpp_fmt fmt,
struct perf_hpp hpp,
struct hists *hists  __maybe_unused,
int line  __maybe_unused,
int *span  __maybe_unused 
)
static

Definition at line 1957 of file sort.c.

Here is the call graph for this function:

◆ __sort__hde_width()

static int __sort__hde_width ( struct perf_hpp_fmt fmt,
struct perf_hpp *hpp  __maybe_unused,
struct hists *hists  __maybe_unused 
)
static

Definition at line 1973 of file sort.c.

Here is the call graph for this function:

◆ __sort__hpp_cmp()

static int64_t __sort__hpp_cmp ( struct perf_hpp_fmt fmt,
struct hist_entry a,
struct hist_entry b 
)
static

Definition at line 1695 of file sort.c.

◆ __sort__hpp_collapse()

static int64_t __sort__hpp_collapse ( struct perf_hpp_fmt fmt,
struct hist_entry a,
struct hist_entry b 
)
static

Definition at line 1704 of file sort.c.

◆ __sort__hpp_entry()

static int __sort__hpp_entry ( struct perf_hpp_fmt fmt,
struct perf_hpp hpp,
struct hist_entry he 
)
static

Definition at line 1681 of file sort.c.

Here is the call graph for this function:

◆ __sort__hpp_equal()

static bool __sort__hpp_equal ( struct perf_hpp_fmt a,
struct perf_hpp_fmt b 
)
static

Definition at line 1752 of file sort.c.

Here is the call graph for this function:

◆ __sort__hpp_header()

static int __sort__hpp_header ( struct perf_hpp_fmt fmt,
struct perf_hpp hpp,
struct hists hists,
int line  __maybe_unused,
int *span  __maybe_unused 
)
static

Definition at line 1651 of file sort.c.

Here is the call graph for this function:

◆ __sort__hpp_sort()

static int64_t __sort__hpp_sort ( struct perf_hpp_fmt fmt,
struct hist_entry a,
struct hist_entry b 
)
static

Definition at line 1715 of file sort.c.

◆ __sort__hpp_width()

static int __sort__hpp_width ( struct perf_hpp_fmt fmt,
struct perf_hpp *hpp  __maybe_unused,
struct hists hists 
)
static

Definition at line 1666 of file sort.c.

Here is the call graph for this function:

◆ __sort_dimension__add()

static int __sort_dimension__add ( struct sort_dimension sd,
struct perf_hpp_list list,
int  level 
)
static

Definition at line 2396 of file sort.c.

Here is the call graph for this function:

◆ __sort_dimension__add_hpp_output()

static int __sort_dimension__add_hpp_output ( struct sort_dimension sd,
struct perf_hpp_list list 
)
static

Definition at line 1872 of file sort.c.

Here is the call graph for this function:

◆ __sort_dimension__add_hpp_sort()

static int __sort_dimension__add_hpp_sort ( struct sort_dimension sd,
struct perf_hpp_list list,
int  level 
)
static

Definition at line 1859 of file sort.c.

Here is the call graph for this function:

◆ __sort_dimension__add_output()

static int __sort_dimension__add_output ( struct perf_hpp_list list,
struct sort_dimension sd 
)
static

Definition at line 2432 of file sort.c.

Here is the call graph for this function:

◆ __sort_dimension__alloc_hpp()

static struct hpp_sort_entry* __sort_dimension__alloc_hpp ( struct sort_dimension sd,
int  level 
)
static

Definition at line 1775 of file sort.c.

Here is the call graph for this function:

◆ _hist_entry__dso_size_snprintf()

static int _hist_entry__dso_size_snprintf ( struct map map,
char *  bf,
size_t  bf_size,
unsigned int  width 
)
static

Definition at line 1528 of file sort.c.

Here is the call graph for this function:

◆ _hist_entry__dso_snprintf()

static int _hist_entry__dso_snprintf ( struct map map,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 181 of file sort.c.

Here is the call graph for this function:

◆ _hist_entry__sym_size_snprintf()

static int _hist_entry__sym_size_snprintf ( struct symbol sym,
char *  bf,
size_t  bf_size,
unsigned int  width 
)
static

Definition at line 1489 of file sort.c.

Here is the call graph for this function:

◆ _hist_entry__sym_snprintf()

static int _hist_entry__sym_snprintf ( struct map map,
struct symbol sym,
u64  ip,
char  level,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 271 of file sort.c.

Here is the call graph for this function:

◆ _sort__addr_cmp()

static int64_t _sort__addr_cmp ( u64  left_ip,
u64  right_ip 
)
static

Definition at line 219 of file sort.c.

◆ _sort__cgroup_dev_cmp()

static int64_t _sort__cgroup_dev_cmp ( u64  left_dev,
u64  right_dev 
)
static

Definition at line 528 of file sort.c.

◆ _sort__cgroup_inode_cmp()

static int64_t _sort__cgroup_inode_cmp ( u64  left_ino,
u64  right_ino 
)
static

Definition at line 533 of file sort.c.

◆ _sort__dso_cmp()

static int64_t _sort__dso_cmp ( struct map map_l,
struct map map_r 
)
static

Definition at line 155 of file sort.c.

Here is the call graph for this function:

◆ _sort__dso_size_cmp()

static int64_t _sort__dso_size_cmp ( struct map map_l,
struct map map_r 
)
static

Definition at line 1513 of file sort.c.

Here is the call graph for this function:

◆ _sort__sym_cmp()

static int64_t _sort__sym_cmp ( struct symbol sym_l,
struct symbol sym_r 
)
static

Definition at line 224 of file sort.c.

Here is the call graph for this function:

◆ _sort__sym_size_cmp()

static int64_t _sort__sym_size_cmp ( struct symbol sym_l,
struct symbol sym_r 
)
static

Definition at line 1474 of file sort.c.

Here is the call graph for this function:

◆ add_all_dynamic_fields()

static int add_all_dynamic_fields ( struct perf_evlist evlist,
bool  raw_trace,
int  level 
)
static

Definition at line 2286 of file sort.c.

Here is the call graph for this function:

◆ add_all_matching_fields()

static int add_all_matching_fields ( struct perf_evlist evlist,
char *  field_name,
bool  raw_trace,
int  level 
)
static

Definition at line 2303 of file sort.c.

Here is the call graph for this function:

◆ add_dynamic_entry()

static int add_dynamic_entry ( struct perf_evlist evlist,
const char *  tok,
int  level 
)
static

Definition at line 2325 of file sort.c.

Here is the call graph for this function:

◆ add_evsel_fields()

static int add_evsel_fields ( struct perf_evsel evsel,
bool  raw_trace,
int  level 
)
static

Definition at line 2270 of file sort.c.

Here is the call graph for this function:

◆ add_str()

static char* add_str ( char *  p,
const char *  str 
)
inlinestatic

Definition at line 1406 of file sort.c.

◆ addr_map_symbol__srcline()

static char* addr_map_symbol__srcline ( struct addr_map_symbol ams)
static

Definition at line 368 of file sort.c.

Here is the call graph for this function:

◆ cmp_null()

static int64_t cmp_null ( const void *  l,
const void *  r 
)
static

Definition at line 66 of file sort.c.

◆ find_evsel()

static struct perf_evsel* find_evsel ( struct perf_evlist evlist,
char *  event_name 
)
static

Definition at line 2215 of file sort.c.

Here is the call graph for this function:

◆ get_default_sort_order()

static const char* get_default_sort_order ( struct perf_evlist evlist)
static

Definition at line 2611 of file sort.c.

Here is the call graph for this function:

◆ get_elide()

static bool get_elide ( int  idx,
FILE *  output 
)
static

Definition at line 2780 of file sort.c.

Here is the call graph for this function:

◆ get_trace_output()

static char* get_trace_output ( struct hist_entry he)
static

Definition at line 600 of file sort.c.

Here is the call graph for this function:

◆ hde_free()

static void hde_free ( struct perf_hpp_fmt fmt)
static

Definition at line 2111 of file sort.c.

Here is the call graph for this function:

◆ hde_width()

static int hde_width ( struct hpp_dynamic_entry hde)
static

Definition at line 1892 of file sort.c.

◆ he_weight()

static u64 he_weight ( struct hist_entry he)
static

Definition at line 1196 of file sort.c.

◆ hist_entry__abort_snprintf()

static int hist_entry__abort_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 1346 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__cgroup_id_snprintf()

static int hist_entry__cgroup_id_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int width  __maybe_unused 
)
static

Definition at line 551 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__comm_snprintf()

static int hist_entry__comm_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 137 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__cpu_snprintf()

static int hist_entry__cpu_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 513 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__cycles_snprintf()

static int hist_entry__cycles_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 883 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__daddr_snprintf()

static int hist_entry__daddr_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 915 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__dcacheline_snprintf()

static int hist_entry__dcacheline_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 1161 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__dso_daddr_snprintf()

static int hist_entry__dso_daddr_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 974 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__dso_filter()

static int hist_entry__dso_filter ( struct hist_entry he,
int  type,
const void *  arg 
)
static

Definition at line 199 of file sort.c.

◆ hist_entry__dso_from_filter()

static int hist_entry__dso_from_filter ( struct hist_entry he,
int  type,
const void *  arg 
)
static

Definition at line 685 of file sort.c.

◆ hist_entry__dso_from_snprintf()

static int hist_entry__dso_from_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 675 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__dso_size_snprintf()

static int hist_entry__dso_size_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 1538 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__dso_snprintf()

static int hist_entry__dso_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 193 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__dso_to_filter()

static int hist_entry__dso_to_filter ( struct hist_entry he,
int  type,
const void *  arg 
)
static

Definition at line 717 of file sort.c.

◆ hist_entry__dso_to_snprintf()

static int hist_entry__dso_to_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 707 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__filter()

int hist_entry__filter ( struct hist_entry he,
int  type,
const void *  arg 
)

Definition at line 1829 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__get_srcfile()

static char* hist_entry__get_srcfile ( struct hist_entry e)
static

Definition at line 429 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__global_weight_snprintf()

static int hist_entry__global_weight_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 1226 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__iaddr_snprintf()

static int hist_entry__iaddr_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 944 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__in_tx_snprintf()

static int hist_entry__in_tx_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 1378 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__local_weight_snprintf()

static int hist_entry__local_weight_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 1207 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__locked_snprintf()

static int hist_entry__locked_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 1004 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__lvl_snprintf()

static int hist_entry__lvl_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 1060 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__mispredict_snprintf()

static int hist_entry__mispredict_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 859 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__parent_snprintf()

static int hist_entry__parent_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 491 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__phys_daddr_snprintf()

static int hist_entry__phys_daddr_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 1308 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__snoop_snprintf()

static int hist_entry__snoop_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 1088 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__socket_filter()

static int hist_entry__socket_filter ( struct hist_entry he,
int  type,
const void *  arg 
)
static

Definition at line 580 of file sort.c.

◆ hist_entry__socket_snprintf()

static int hist_entry__socket_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 574 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__srcfile_snprintf()

static int hist_entry__srcfile_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 461 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__srcline()

char* hist_entry__srcline ( struct hist_entry he)

Definition at line 334 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__srcline_from_snprintf()

static int hist_entry__srcline_from_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 385 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__srcline_snprintf()

static int hist_entry__srcline_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 350 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__srcline_to_snprintf()

static int hist_entry__srcline_to_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 412 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__sym_filter()

static int hist_entry__sym_filter ( struct hist_entry he,
int  type,
const void *  arg 
)
static

Definition at line 313 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__sym_from_filter()

static int hist_entry__sym_from_filter ( struct hist_entry he,
int  type,
const void *  arg 
)
static

Definition at line 790 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__sym_from_snprintf()

static int hist_entry__sym_from_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 764 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__sym_size_snprintf()

static int hist_entry__sym_size_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 1498 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__sym_snprintf()

static int hist_entry__sym_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 306 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__sym_to_filter()

static int hist_entry__sym_to_filter ( struct hist_entry he,
int  type,
const void *  arg 
)
static

Definition at line 802 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__sym_to_snprintf()

static int hist_entry__sym_to_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 777 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__thread_filter()

static int hist_entry__thread_filter ( struct hist_entry he,
int  type,
const void *  arg 
)
static

Definition at line 94 of file sort.c.

◆ hist_entry__thread_snprintf()

static int hist_entry__thread_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 84 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__tlb_snprintf()

static int hist_entry__tlb_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 1032 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__trace_snprintf()

static int hist_entry__trace_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 642 of file sort.c.

Here is the call graph for this function:

◆ hist_entry__transaction_len()

int hist_entry__transaction_len ( void  )

Definition at line 1428 of file sort.c.

◆ hist_entry__transaction_snprintf()

static int hist_entry__transaction_snprintf ( struct hist_entry he,
char *  bf,
size_t  size,
unsigned int  width 
)
static

Definition at line 1441 of file sort.c.

Here is the call graph for this function:

◆ hpp_dimension__add_output()

int hpp_dimension__add_output ( unsigned  col)

Definition at line 2462 of file sort.c.

Here is the call graph for this function:

◆ hpp_free()

static void hpp_free ( struct perf_hpp_fmt fmt)
static

Definition at line 1808 of file sort.c.

Here is the call graph for this function:

◆ hse_free()

static void hse_free ( struct perf_hpp_fmt fmt)
static

Definition at line 1766 of file sort.c.

Here is the call graph for this function:

◆ is_strict_order()

bool is_strict_order ( const char *  order)

Definition at line 2925 of file sort.c.

◆ output_field_add()

int output_field_add ( struct perf_hpp_list list,
char *  tok 
)

Definition at line 2845 of file sort.c.

Here is the call graph for this function:

◆ parse_field_name()

static int parse_field_name ( char *  str,
char **  event,
char **  field,
char **  opt 
)
static

Definition at line 2185 of file sort.c.

Here is the call graph for this function:

◆ perf_hpp__defined_dynamic_entry()

bool perf_hpp__defined_dynamic_entry ( struct perf_hpp_fmt fmt,
struct hists hists 
)

Definition at line 1988 of file sort.c.

Here is the call graph for this function:

◆ perf_hpp__is_dynamic_entry()

bool perf_hpp__is_dynamic_entry ( struct perf_hpp_fmt fmt)

Definition at line 2092 of file sort.c.

Here is the call graph for this function:

◆ perf_hpp__is_sort_entry()

bool perf_hpp__is_sort_entry ( struct perf_hpp_fmt format)

Definition at line 1726 of file sort.c.

Here is the call graph for this function:

◆ perf_hpp__reset_sort_width()

void perf_hpp__reset_sort_width ( struct perf_hpp_fmt fmt,
struct hists hists 
)

Definition at line 1640 of file sort.c.

Here is the call graph for this function:

◆ perf_hpp__set_elide()

void perf_hpp__set_elide ( int  idx,
bool  elide 
)

Definition at line 2752 of file sort.c.

Here is the call graph for this function:

◆ perf_hpp_fmt__dup()

struct perf_hpp_fmt* perf_hpp_fmt__dup ( struct perf_hpp_fmt fmt)

Definition at line 2157 of file sort.c.

Here is the call graph for this function:

◆ prefix_if_not_in()

static char* prefix_if_not_in ( const char *  pre,
char *  str 
)
static

Definition at line 2679 of file sort.c.

Here is the call graph for this function:

◆ repsep_snprintf()

static int repsep_snprintf ( char *  bf,
size_t  size,
const char *  fmt,
  ... 
)
static

Definition at line 42 of file sort.c.

◆ reset_dimensions()

void reset_dimensions ( void  )

Definition at line 2908 of file sort.c.

◆ reset_output_field()

void reset_output_field ( void  )

Definition at line 2997 of file sort.c.

Here is the call graph for this function:

◆ setup_output_list()

static int setup_output_list ( struct perf_hpp_list list,
char *  str 
)
static

Definition at line 2888 of file sort.c.

Here is the call graph for this function:

◆ setup_overhead()

static char* setup_overhead ( char *  keys)
static

Definition at line 2693 of file sort.c.

Here is the call graph for this function:

◆ setup_sort_list()

static int setup_sort_list ( struct perf_hpp_list list,
char *  str,
struct perf_evlist evlist 
)
static

Definition at line 2564 of file sort.c.

Here is the call graph for this function:

◆ setup_sort_order()

static int setup_sort_order ( struct perf_evlist evlist)
static

Definition at line 2645 of file sort.c.

Here is the call graph for this function:

◆ setup_sorting()

int setup_sorting ( struct perf_evlist evlist)

Definition at line 2959 of file sort.c.

Here is the call graph for this function:

◆ sort__abort_cmp()

static int64_t sort__abort_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 1337 of file sort.c.

Here is the call graph for this function:

◆ sort__cgroup_id_cmp()

static int64_t sort__cgroup_id_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 539 of file sort.c.

Here is the call graph for this function:

◆ sort__comm_cmp()

static int64_t sort__comm_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 120 of file sort.c.

Here is the call graph for this function:

◆ sort__comm_collapse()

static int64_t sort__comm_collapse ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 126 of file sort.c.

Here is the call graph for this function:

◆ sort__comm_sort()

static int64_t sort__comm_sort ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 132 of file sort.c.

Here is the call graph for this function:

◆ sort__cpu_cmp()

static int64_t sort__cpu_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 508 of file sort.c.

◆ sort__cycles_cmp()

static int64_t sort__cycles_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 874 of file sort.c.

Here is the call graph for this function:

◆ sort__daddr_cmp()

int64_t sort__daddr_cmp ( struct hist_entry left,
struct hist_entry right 
)

Definition at line 903 of file sort.c.

◆ sort__dcacheline_cmp()

int64_t sort__dcacheline_cmp ( struct hist_entry left,
struct hist_entry right 
)

Definition at line 1098 of file sort.c.

Here is the call graph for this function:

◆ sort__dso_cmp()

static int64_t sort__dso_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 176 of file sort.c.

Here is the call graph for this function:

◆ sort__dso_daddr_cmp()

static int64_t sort__dso_daddr_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 961 of file sort.c.

Here is the call graph for this function:

◆ sort__dso_from_cmp()

static int64_t sort__dso_from_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 666 of file sort.c.

Here is the call graph for this function:

◆ sort__dso_size_cmp()

static int64_t sort__dso_size_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 1523 of file sort.c.

Here is the call graph for this function:

◆ sort__dso_to_cmp()

static int64_t sort__dso_to_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 698 of file sort.c.

Here is the call graph for this function:

◆ sort__global_weight_cmp()

static int64_t sort__global_weight_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 1221 of file sort.c.

◆ sort__iaddr_cmp()

int64_t sort__iaddr_cmp ( struct hist_entry left,
struct hist_entry right 
)

Definition at line 932 of file sort.c.

◆ sort__in_tx_cmp()

static int64_t sort__in_tx_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 1369 of file sort.c.

Here is the call graph for this function:

◆ sort__local_weight_cmp()

static int64_t sort__local_weight_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 1202 of file sort.c.

Here is the call graph for this function:

◆ sort__locked_cmp()

static int64_t sort__locked_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 986 of file sort.c.

◆ sort__lvl_cmp()

static int64_t sort__lvl_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 1042 of file sort.c.

◆ sort__mispredict_cmp()

static int64_t sort__mispredict_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 847 of file sort.c.

Here is the call graph for this function:

◆ sort__parent_cmp()

static int64_t sort__parent_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 480 of file sort.c.

Here is the call graph for this function:

◆ sort__phys_daddr_cmp()

static int64_t sort__phys_daddr_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 1296 of file sort.c.

◆ sort__setup_elide()

void sort__setup_elide ( FILE *  output)

Definition at line 2812 of file sort.c.

Here is the call graph for this function:

◆ sort__snoop_cmp()

static int64_t sort__snoop_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 1070 of file sort.c.

◆ sort__socket_cmp()

static int64_t sort__socket_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 569 of file sort.c.

◆ sort__srcfile_cmp()

static int64_t sort__srcfile_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 451 of file sort.c.

Here is the call graph for this function:

◆ sort__srcline_cmp()

static int64_t sort__srcline_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 340 of file sort.c.

Here is the call graph for this function:

◆ sort__srcline_from_cmp()

static int64_t sort__srcline_from_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 374 of file sort.c.

Here is the call graph for this function:

◆ sort__srcline_to_cmp()

static int64_t sort__srcline_to_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 401 of file sort.c.

Here is the call graph for this function:

◆ sort__sym_cmp()

static int64_t sort__sym_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 242 of file sort.c.

Here is the call graph for this function:

◆ sort__sym_from_cmp()

static int64_t sort__sym_from_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 730 of file sort.c.

Here is the call graph for this function:

◆ sort__sym_size_cmp()

static int64_t sort__sym_size_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 1484 of file sort.c.

Here is the call graph for this function:

◆ sort__sym_sort()

static int64_t sort__sym_sort ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 263 of file sort.c.

Here is the call graph for this function:

◆ sort__sym_to_cmp()

static int64_t sort__sym_to_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 748 of file sort.c.

Here is the call graph for this function:

◆ sort__thread_cmp()

static int64_t sort__thread_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 79 of file sort.c.

◆ sort__tlb_cmp()

static int64_t sort__tlb_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 1014 of file sort.c.

◆ sort__trace_cmp()

static int64_t sort__trace_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 626 of file sort.c.

Here is the call graph for this function:

◆ sort__transaction_cmp()

static int64_t sort__transaction_cmp ( struct hist_entry left,
struct hist_entry right 
)
static

Definition at line 1401 of file sort.c.

◆ sort_dimension__add()

int sort_dimension__add ( struct perf_hpp_list list,
const char *  tok,
struct perf_evlist evlist,
int  level 
)

Definition at line 2468 of file sort.c.

Here is the call graph for this function:

◆ update_dynamic_len()

static void update_dynamic_len ( struct hpp_dynamic_entry hde,
struct hist_entry he 
)
static

Definition at line 1914 of file sort.c.

Here is the call graph for this function:

Variable Documentation

◆ bstack_sort_dimensions

struct sort_dimension bstack_sort_dimensions[]
static
Initial value:
= {
DIM(SORT_SYM_FROM, "symbol_from", sort_sym_from),
DIM(SORT_SYM_TO, "symbol_to", sort_sym_to),
}
#define DIM(d, n, func)
Definition: sort.c:1620
struct sort_entry sort_sym_to
Definition: sort.c:838
struct sort_entry sort_dso_to
Definition: sort.c:822
struct sort_entry sort_abort
Definition: sort.c:1361
struct sort_entry sort_in_tx
Definition: sort.c:1393
struct sort_entry sort_mispredict
Definition: sort.c:1189
struct sort_entry sort_sym_from
Definition: sort.c:830
struct sort_entry sort_dso_from
Definition: sort.c:814
struct sort_entry sort_srcline_from
Definition: sort.c:391
struct sort_entry sort_srcline_to
Definition: sort.c:418
struct sort_entry sort_cycles
Definition: sort.c:894

Definition at line 1583 of file sort.c.

◆ common_sort_dimensions

struct sort_dimension common_sort_dimensions[]
static
Initial value:
= {
DIM(SORT_COMM, "comm", sort_comm),
DIM(SORT_DSO, "dso", sort_dso),
DIM(SORT_SYM, "symbol", sort_sym),
DIM(SORT_CPU, "cpu", sort_cpu),
DIM(SORT_SYM_SIZE, "symbol_size", sort_sym_size),
}
struct sort_entry sort_cgroup_id
Definition: sort.c:559
struct sort_entry sort_dso
Definition: sort.c:209
struct sort_entry sort_thread
Definition: sort.c:104
struct sort_entry sort_comm
Definition: sort.c:143
struct sort_entry sort_local_weight
Definition: sort.c:1213
#define DIM(d, n, func)
Definition: sort.c:1620
struct sort_entry sort_sym_size
Definition: sort.c:1504
struct sort_entry sort_global_weight
Definition: sort.c:1232
struct sort_entry sort_srcfile
Definition: sort.c:470
struct sort_entry sort_transaction
Definition: sort.c:1465
struct sort_entry sort_socket
Definition: sort.c:590
struct sort_entry sort_parent
Definition: sort.c:498
struct sort_entry sort_cpu
Definition: sort.c:519
struct sort_entry sort_srcline
Definition: sort.c:359
struct sort_entry sort_dso_size
Definition: sort.c:1544
struct sort_entry sort_sym
Definition: sort.c:323
Definition: sort.h:214
Definition: sort.h:217
struct sort_entry sort_trace
Definition: sort.c:656
Definition: sort.h:219
Definition: sort.h:216

Definition at line 1560 of file sort.c.

◆ default_branch_sort_order

const char default_branch_sort_order[] = "comm,dso_from,symbol_from,symbol_to,cycles"

Definition at line 22 of file sort.c.

◆ default_diff_sort_order

const char default_diff_sort_order[] = "dso,symbol"

Definition at line 25 of file sort.c.

◆ default_mem_sort_order

const char default_mem_sort_order[] = "local_weight,mem,sym,dso,symbol_daddr,dso_daddr,snoop,tlb,locked"

Definition at line 23 of file sort.c.

◆ default_parent_pattern

const char default_parent_pattern[] = "^sys_|^do_page_fault"

Definition at line 19 of file sort.c.

◆ default_sort_order

const char* default_sort_order = "comm,dso,symbol"

Definition at line 21 of file sort.c.

◆ default_top_sort_order

const char default_top_sort_order[] = "dso,symbol"

Definition at line 24 of file sort.c.

◆ default_tracepoint_sort_order

const char default_tracepoint_sort_order[] = "trace"

Definition at line 26 of file sort.c.

◆ field_order

const char* field_order

Definition at line 28 of file sort.c.

◆ have_ignore_callees

int have_ignore_callees = 0

Definition at line 30 of file sort.c.

◆ hpp_sort_dimensions

struct hpp_dimension hpp_sort_dimensions[]
static
Initial value:

Definition at line 1622 of file sort.c.

◆ ignore_callees_regex

regex_t ignore_callees_regex

Definition at line 29 of file sort.c.

◆ memory_sort_dimensions

struct sort_dimension memory_sort_dimensions[]
static
Initial value:
= {
}
struct sort_entry sort_mem_snoop
Definition: sort.c:1281
struct sort_entry sort_mem_daddr_sym
Definition: sort.c:1239
#define DIM(d, n, func)
Definition: sort.c:1620
struct sort_entry sort_mem_iaddr_sym
Definition: sort.c:1246
struct sort_entry sort_mem_locked
Definition: sort.c:1260
struct sort_entry sort_mem_daddr_dso
Definition: sort.c:1253
struct sort_entry sort_mem_tlb
Definition: sort.c:1267
struct sort_entry sort_mem_lvl
Definition: sort.c:1274
struct sort_entry sort_mem_dcacheline
Definition: sort.c:1288
struct sort_entry sort_mem_phys_daddr
Definition: sort.c:1329

Definition at line 1600 of file sort.c.

◆ no_srcfile

char no_srcfile[1]
static

Definition at line 427 of file sort.c.

◆ parent_pattern

const char* parent_pattern = default_parent_pattern

Definition at line 20 of file sort.c.

◆ parent_regex

regex_t parent_regex

Definition at line 18 of file sort.c.

◆ sort__mode

enum sort_mode sort__mode = SORT_MODE__NORMAL

Definition at line 31 of file sort.c.

◆ sort_abort

struct sort_entry sort_abort
Initial value:
= {
.se_header = "Transaction abort",
.se_cmp = sort__abort_cmp,
.se_width_idx = HISTC_ABORT,
}
static int hist_entry__abort_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:1346
static int64_t sort__abort_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:1337

Definition at line 1361 of file sort.c.

◆ sort_cgroup_id

struct sort_entry sort_cgroup_id
Initial value:
= {
.se_header = "cgroup id (dev/inode)",
.se_width_idx = HISTC_CGROUP_ID,
}
static int64_t sort__cgroup_id_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:539
static int hist_entry__cgroup_id_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width __maybe_unused)
Definition: sort.c:551

Definition at line 559 of file sort.c.

◆ sort_comm

struct sort_entry sort_comm
Initial value:
= {
.se_header = "Command",
.se_cmp = sort__comm_cmp,
.se_collapse = sort__comm_collapse,
.se_sort = sort__comm_sort,
.se_snprintf = hist_entry__comm_snprintf,
.se_width_idx = HISTC_COMM,
}
static int hist_entry__comm_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:137
static int64_t sort__comm_sort(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:132
static int hist_entry__thread_filter(struct hist_entry *he, int type, const void *arg)
Definition: sort.c:94
static int64_t sort__comm_collapse(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:126
static int64_t sort__comm_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:120

Definition at line 143 of file sort.c.

◆ sort_cpu

struct sort_entry sort_cpu
Initial value:
= {
.se_header = "CPU",
.se_cmp = sort__cpu_cmp,
.se_snprintf = hist_entry__cpu_snprintf,
.se_width_idx = HISTC_CPU,
}
static int hist_entry__cpu_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:513
Definition: hist.h:36
static int64_t sort__cpu_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:508

Definition at line 519 of file sort.c.

◆ sort_cycles

struct sort_entry sort_cycles
Initial value:
= {
.se_header = "Basic Block Cycles",
.se_cmp = sort__cycles_cmp,
.se_width_idx = HISTC_CYCLES,
}
static int64_t sort__cycles_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:874
static int hist_entry__cycles_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:883

Definition at line 894 of file sort.c.

◆ sort_dso

struct sort_entry sort_dso
Initial value:
= {
.se_header = "Shared Object",
.se_cmp = sort__dso_cmp,
.se_snprintf = hist_entry__dso_snprintf,
.se_filter = hist_entry__dso_filter,
.se_width_idx = HISTC_DSO,
}
static int64_t sort__dso_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:176
Definition: hist.h:31
static int hist_entry__dso_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:193
static int hist_entry__dso_filter(struct hist_entry *he, int type, const void *arg)
Definition: sort.c:199

Definition at line 209 of file sort.c.

◆ sort_dso_from

struct sort_entry sort_dso_from
Initial value:
= {
.se_header = "Source Shared Object",
.se_cmp = sort__dso_from_cmp,
.se_width_idx = HISTC_DSO_FROM,
}
static int64_t sort__dso_from_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:666
static int hist_entry__dso_from_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:675
static int hist_entry__dso_from_filter(struct hist_entry *he, int type, const void *arg)
Definition: sort.c:685

Definition at line 814 of file sort.c.

◆ sort_dso_size

struct sort_entry sort_dso_size
Initial value:
= {
.se_header = "DSO size",
.se_cmp = sort__dso_size_cmp,
.se_width_idx = HISTC_DSO_SIZE,
}
static int64_t sort__dso_size_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:1523
static int hist_entry__dso_size_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:1538

Definition at line 1544 of file sort.c.

◆ sort_dso_to

struct sort_entry sort_dso_to
Initial value:
= {
.se_header = "Target Shared Object",
.se_cmp = sort__dso_to_cmp,
.se_width_idx = HISTC_DSO_TO,
}
static int hist_entry__dso_to_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:707
static int64_t sort__dso_to_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:698
static int hist_entry__dso_to_filter(struct hist_entry *he, int type, const void *arg)
Definition: sort.c:717

Definition at line 822 of file sort.c.

◆ sort_global_weight

struct sort_entry sort_global_weight
Initial value:
= {
.se_header = "Weight",
.se_width_idx = HISTC_GLOBAL_WEIGHT,
}
static int64_t sort__global_weight_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:1221
static int hist_entry__global_weight_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:1226

Definition at line 1232 of file sort.c.

◆ sort_in_tx

struct sort_entry sort_in_tx
Initial value:
= {
.se_header = "Branch in transaction",
.se_cmp = sort__in_tx_cmp,
.se_width_idx = HISTC_IN_TX,
}
static int64_t sort__in_tx_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:1369
static int hist_entry__in_tx_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:1378

Definition at line 1393 of file sort.c.

◆ sort_local_weight

struct sort_entry sort_local_weight
Initial value:
= {
.se_header = "Local Weight",
.se_width_idx = HISTC_LOCAL_WEIGHT,
}
static int64_t sort__local_weight_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:1202
static int hist_entry__local_weight_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:1207

Definition at line 1213 of file sort.c.

◆ sort_mem_daddr_dso

struct sort_entry sort_mem_daddr_dso
Initial value:
= {
.se_header = "Data Object",
.se_width_idx = HISTC_MEM_DADDR_DSO,
}
static int hist_entry__dso_daddr_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:974
static int64_t sort__dso_daddr_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:961

Definition at line 1253 of file sort.c.

◆ sort_mem_daddr_sym

struct sort_entry sort_mem_daddr_sym
Initial value:
= {
.se_header = "Data Symbol",
.se_cmp = sort__daddr_cmp,
.se_width_idx = HISTC_MEM_DADDR_SYMBOL,
}
static int hist_entry__daddr_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:915
int64_t sort__daddr_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:903

Definition at line 1239 of file sort.c.

◆ sort_mem_dcacheline

struct sort_entry sort_mem_dcacheline
Initial value:
= {
.se_header = "Data Cacheline",
.se_width_idx = HISTC_MEM_DCACHELINE,
}
static int hist_entry__dcacheline_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:1161
int64_t sort__dcacheline_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:1098

Definition at line 1288 of file sort.c.

◆ sort_mem_iaddr_sym

struct sort_entry sort_mem_iaddr_sym
Initial value:
= {
.se_header = "Code Symbol",
.se_cmp = sort__iaddr_cmp,
.se_width_idx = HISTC_MEM_IADDR_SYMBOL,
}
int64_t sort__iaddr_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:932
static int hist_entry__iaddr_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:944

Definition at line 1246 of file sort.c.

◆ sort_mem_locked

struct sort_entry sort_mem_locked
Initial value:
= {
.se_header = "Locked",
.se_cmp = sort__locked_cmp,
.se_width_idx = HISTC_MEM_LOCKED,
}
static int hist_entry__locked_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:1004
static int64_t sort__locked_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:986

Definition at line 1260 of file sort.c.

◆ sort_mem_lvl

struct sort_entry sort_mem_lvl
Initial value:
= {
.se_header = "Memory access",
.se_cmp = sort__lvl_cmp,
.se_snprintf = hist_entry__lvl_snprintf,
.se_width_idx = HISTC_MEM_LVL,
}
static int64_t sort__lvl_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:1042
static int hist_entry__lvl_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:1060

Definition at line 1274 of file sort.c.

◆ sort_mem_phys_daddr

struct sort_entry sort_mem_phys_daddr
Initial value:
= {
.se_header = "Data Physical Address",
.se_width_idx = HISTC_MEM_PHYS_DADDR,
}
static int64_t sort__phys_daddr_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:1296
static int hist_entry__phys_daddr_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:1308

Definition at line 1329 of file sort.c.

◆ sort_mem_snoop

struct sort_entry sort_mem_snoop
Initial value:
= {
.se_header = "Snoop",
.se_cmp = sort__snoop_cmp,
.se_width_idx = HISTC_MEM_SNOOP,
}
static int hist_entry__snoop_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:1088
static int64_t sort__snoop_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:1070

Definition at line 1281 of file sort.c.

◆ sort_mem_tlb

struct sort_entry sort_mem_tlb
Initial value:
= {
.se_header = "TLB access",
.se_cmp = sort__tlb_cmp,
.se_snprintf = hist_entry__tlb_snprintf,
.se_width_idx = HISTC_MEM_TLB,
}
static int64_t sort__tlb_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:1014
static int hist_entry__tlb_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:1032

Definition at line 1267 of file sort.c.

◆ sort_mispredict

struct sort_entry sort_mispredict
Initial value:
= {
.se_header = "Branch Mispredicted",
.se_width_idx = HISTC_MISPREDICT,
}
static int64_t sort__mispredict_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:847
static int hist_entry__mispredict_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:859

Definition at line 1189 of file sort.c.

◆ sort_order

const char* sort_order

Definition at line 27 of file sort.c.

◆ sort_parent

struct sort_entry sort_parent
Initial value:
= {
.se_header = "Parent symbol",
.se_cmp = sort__parent_cmp,
.se_width_idx = HISTC_PARENT,
}
static int64_t sort__parent_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:480
static int hist_entry__parent_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:491

Definition at line 498 of file sort.c.

◆ sort_socket

struct sort_entry sort_socket
Initial value:
= {
.se_header = "Socket",
.se_cmp = sort__socket_cmp,
.se_width_idx = HISTC_SOCKET,
}
static int hist_entry__socket_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:574
static int hist_entry__socket_filter(struct hist_entry *he, int type, const void *arg)
Definition: sort.c:580
static int64_t sort__socket_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:569

Definition at line 590 of file sort.c.

◆ sort_srcfile

struct sort_entry sort_srcfile
Initial value:
= {
.se_header = "Source File",
.se_cmp = sort__srcfile_cmp,
.se_width_idx = HISTC_SRCFILE,
}
static int64_t sort__srcfile_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:451
static int hist_entry__srcfile_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:461

Definition at line 470 of file sort.c.

◆ sort_srcline

struct sort_entry sort_srcline
Initial value:
= {
.se_header = "Source:Line",
.se_cmp = sort__srcline_cmp,
.se_width_idx = HISTC_SRCLINE,
}
static int64_t sort__srcline_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:340
static int hist_entry__srcline_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:350

Definition at line 359 of file sort.c.

◆ sort_srcline_from

struct sort_entry sort_srcline_from
Initial value:
= {
.se_header = "From Source:Line",
.se_width_idx = HISTC_SRCLINE_FROM,
}
static int hist_entry__srcline_from_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:385
static int64_t sort__srcline_from_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:374

Definition at line 391 of file sort.c.

◆ sort_srcline_to

struct sort_entry sort_srcline_to
Initial value:
= {
.se_header = "To Source:Line",
.se_width_idx = HISTC_SRCLINE_TO,
}
static int hist_entry__srcline_to_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:412
static int64_t sort__srcline_to_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:401

Definition at line 418 of file sort.c.

◆ sort_sym

struct sort_entry sort_sym
Initial value:
= {
.se_header = "Symbol",
.se_cmp = sort__sym_cmp,
.se_sort = sort__sym_sort,
.se_snprintf = hist_entry__sym_snprintf,
.se_filter = hist_entry__sym_filter,
.se_width_idx = HISTC_SYMBOL,
}
static int hist_entry__sym_filter(struct hist_entry *he, int type, const void *arg)
Definition: sort.c:313
static int64_t sort__sym_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:242
static int64_t sort__sym_sort(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:263
static int hist_entry__sym_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:306

Definition at line 323 of file sort.c.

◆ sort_sym_from

struct sort_entry sort_sym_from
Initial value:
= {
.se_header = "Source Symbol",
.se_cmp = sort__sym_from_cmp,
.se_width_idx = HISTC_SYMBOL_FROM,
}
static int hist_entry__sym_from_filter(struct hist_entry *he, int type, const void *arg)
Definition: sort.c:790
static int64_t sort__sym_from_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:730
static int hist_entry__sym_from_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:764

Definition at line 830 of file sort.c.

◆ sort_sym_size

struct sort_entry sort_sym_size
Initial value:
= {
.se_header = "Symbol size",
.se_cmp = sort__sym_size_cmp,
.se_width_idx = HISTC_SYM_SIZE,
}
static int64_t sort__sym_size_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:1484
static int hist_entry__sym_size_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:1498

Definition at line 1504 of file sort.c.

◆ sort_sym_to

struct sort_entry sort_sym_to
Initial value:
= {
.se_header = "Target Symbol",
.se_cmp = sort__sym_to_cmp,
.se_width_idx = HISTC_SYMBOL_TO,
}
static int64_t sort__sym_to_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:748
static int hist_entry__sym_to_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:777
static int hist_entry__sym_to_filter(struct hist_entry *he, int type, const void *arg)
Definition: sort.c:802

Definition at line 838 of file sort.c.

◆ sort_thread

struct sort_entry sort_thread
Initial value:
= {
.se_header = " Pid:Command",
.se_cmp = sort__thread_cmp,
.se_width_idx = HISTC_THREAD,
}
static int hist_entry__thread_filter(struct hist_entry *he, int type, const void *arg)
Definition: sort.c:94
static int64_t sort__thread_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:79
static int hist_entry__thread_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:84

Definition at line 104 of file sort.c.

◆ sort_trace

struct sort_entry sort_trace
Initial value:
= {
.se_header = "Trace output",
.se_cmp = sort__trace_cmp,
.se_width_idx = HISTC_TRACE,
}
static int hist_entry__trace_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:642
static int64_t sort__trace_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:626

Definition at line 656 of file sort.c.

◆ sort_transaction

struct sort_entry sort_transaction
Initial value:
= {
.se_header = "Transaction ",
.se_width_idx = HISTC_TRANSACTION,
}
static int hist_entry__transaction_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width)
Definition: sort.c:1441
static int64_t sort__transaction_cmp(struct hist_entry *left, struct hist_entry *right)
Definition: sort.c:1401

Definition at line 1465 of file sort.c.

◆ txbits

struct txbit txbits[]
static
Initial value:
= {
{ PERF_TXN_ELISION, "EL ", 0 },
{ PERF_TXN_TRANSACTION, "TX ", 1 },
{ PERF_TXN_SYNC, "SYNC ", 1 },
{ PERF_TXN_ASYNC, "ASYNC ", 0 },
{ PERF_TXN_RETRY, "RETRY ", 0 },
{ PERF_TXN_CONFLICT, "CON ", 0 },
{ PERF_TXN_CAPACITY_WRITE, "CAP-WRITE ", 1 },
{ PERF_TXN_CAPACITY_READ, "CAP-READ ", 0 },
{ 0, NULL, 0 }
}