hc
2023-12-09 b22da3d8526a935aa31e086e63f60ff3246cb61c
kernel/tools/perf/util/top.h
....@@ -3,26 +3,30 @@
33 #define __PERF_TOP_H 1
44
55 #include "tool.h"
6
+#include "evswitch.h"
67 #include "annotate.h"
8
+#include "ordered-events.h"
9
+#include "record.h"
710 #include <linux/types.h>
811 #include <stddef.h>
912 #include <stdbool.h>
1013 #include <sys/ioctl.h>
1114
12
-struct perf_evlist;
13
-struct perf_evsel;
15
+struct evlist;
16
+struct evsel;
1417 struct perf_session;
1518
1619 struct perf_top {
1720 struct perf_tool tool;
18
- struct perf_evlist *evlist;
21
+ struct evlist *evlist, *sb_evlist;
1922 struct record_opts record_opts;
2023 struct annotation_options annotation_opts;
24
+ struct evswitch evswitch;
2125 /*
2226 * Symbols will be added here in perf_event__process_sample and will
2327 * get out after decayed.
2428 */
25
- u64 samples;
29
+ u64 samples, lost, lost_total, drop, drop_total;
2630 u64 kernel_samples, us_samples;
2731 u64 exact_samples;
2832 u64 guest_us_samples, guest_kernel_samples;
....@@ -32,14 +36,23 @@
3236 bool use_tui, use_stdio;
3337 bool vmlinux_warned;
3438 bool dump_symtab;
39
+ bool stitch_lbr;
3540 struct hist_entry *sym_filter_entry;
36
- struct perf_evsel *sym_evsel;
41
+ struct evsel *sym_evsel;
3742 struct perf_session *session;
3843 struct winsize winsize;
3944 int realtime_prio;
4045 const char *sym_filter;
4146 float min_percent;
4247 unsigned int nr_threads_synthesize;
48
+
49
+ struct {
50
+ struct ordered_events *in;
51
+ struct ordered_events data[2];
52
+ bool rotate;
53
+ pthread_mutex_t mutex;
54
+ pthread_cond_t cond;
55
+ } qe;
4356 };
4457
4558 #define CONSOLE_CLEAR ""