Merge branch 'upstream' into bugfix-video
[firefly-linux-kernel-4.4.55.git] / tools / perf / util / top.h
1 #ifndef __PERF_TOP_H
2 #define __PERF_TOP_H 1
3
4 #include "tool.h"
5 #include "types.h"
6 #include <stddef.h>
7 #include <stdbool.h>
8
9 struct perf_evlist;
10 struct perf_evsel;
11 struct perf_session;
12
13 struct perf_top {
14         struct perf_tool   tool;
15         struct perf_evlist *evlist;
16         struct perf_target target;
17         /*
18          * Symbols will be added here in perf_event__process_sample and will
19          * get out after decayed.
20          */
21         u64                samples;
22         u64                kernel_samples, us_samples;
23         u64                exact_samples;
24         u64                guest_us_samples, guest_kernel_samples;
25         int                print_entries, count_filter, delay_secs;
26         int                freq;
27         bool               hide_kernel_symbols, hide_user_symbols, zero;
28         bool               use_tui, use_stdio;
29         bool               sort_has_symbols;
30         bool               dont_use_callchains;
31         bool               kptr_restrict_warned;
32         bool               vmlinux_warned;
33         bool               inherit;
34         bool               group;
35         bool               sample_id_all_missing;
36         bool               exclude_guest_missing;
37         bool               dump_symtab;
38         struct hist_entry  *sym_filter_entry;
39         struct perf_evsel  *sym_evsel;
40         struct perf_session *session;
41         struct winsize     winsize;
42         unsigned int       mmap_pages;
43         int                default_interval;
44         int                realtime_prio;
45         int                sym_pcnt_filter;
46         const char         *sym_filter;
47 };
48
49 size_t perf_top__header_snprintf(struct perf_top *top, char *bf, size_t size);
50 void perf_top__reset_sample_counters(struct perf_top *top);
51 #endif /* __PERF_TOP_H */