aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf
diff options
context:
space:
mode:
authorJiri Olsa <jolsa@kernel.org>2018-09-13 08:54:03 -0400
committerArnaldo Carvalho de Melo <acme@redhat.com>2018-09-19 09:25:10 -0400
commit89f1688a57a8f0b685fccd648e601a1f830fa744 (patch)
treee098f3e4df8037281aa8e717aeee3aed77990ac0 /tools/perf
parente381d1c21eea186daed6834af444575e06841355 (diff)
perf tools: Remove perf_tool from event_op2
Now that we keep a perf_tool pointer inside perf_session, there's no need to have a perf_tool argument in the event_op2 callback. Remove it. Signed-off-by: Jiri Olsa <jolsa@kernel.org> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com> Cc: Alexey Budankov <alexey.budankov@linux.intel.com> Cc: Andi Kleen <andi@firstfloor.org> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Peter Zijlstra <peterz@infradead.org> Link: http://lkml.kernel.org/r/20180913125450.21342-2-jolsa@kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf')
-rw-r--r--tools/perf/builtin-annotate.c7
-rw-r--r--tools/perf/builtin-inject.c26
-rw-r--r--tools/perf/builtin-report.c9
-rw-r--r--tools/perf/builtin-script.c38
-rw-r--r--tools/perf/builtin-stat.c23
-rw-r--r--tools/perf/util/auxtrace.c10
-rw-r--r--tools/perf/util/auxtrace.h10
-rw-r--r--tools/perf/util/header.c16
-rw-r--r--tools/perf/util/header.h15
-rw-r--r--tools/perf/util/session.c67
-rw-r--r--tools/perf/util/session.h5
-rw-r--r--tools/perf/util/stat.c5
-rw-r--r--tools/perf/util/stat.h5
-rw-r--r--tools/perf/util/tool.h3
14 files changed, 103 insertions, 136 deletions
diff --git a/tools/perf/builtin-annotate.c b/tools/perf/builtin-annotate.c
index 830481b8db26..93d679eaf1f4 100644
--- a/tools/perf/builtin-annotate.c
+++ b/tools/perf/builtin-annotate.c
@@ -283,12 +283,11 @@ out_put:
283 return ret; 283 return ret;
284} 284}
285 285
286static int process_feature_event(struct perf_tool *tool, 286static int process_feature_event(struct perf_session *session,
287 union perf_event *event, 287 union perf_event *event)
288 struct perf_session *session)
289{ 288{
290 if (event->feat.feat_id < HEADER_LAST_FEATURE) 289 if (event->feat.feat_id < HEADER_LAST_FEATURE)
291 return perf_event__process_feature(tool, event, session); 290 return perf_event__process_feature(session, event);
292 return 0; 291 return 0;
293} 292}
294 293
diff --git a/tools/perf/builtin-inject.c b/tools/perf/builtin-inject.c
index a3b346359ba0..d77ed2aea95a 100644
--- a/tools/perf/builtin-inject.c
+++ b/tools/perf/builtin-inject.c
@@ -86,12 +86,10 @@ static int perf_event__drop_oe(struct perf_tool *tool __maybe_unused,
86} 86}
87#endif 87#endif
88 88
89static int perf_event__repipe_op2_synth(struct perf_tool *tool, 89static int perf_event__repipe_op2_synth(struct perf_session *session,
90 union perf_event *event, 90 union perf_event *event)
91 struct perf_session *session
92 __maybe_unused)
93{ 91{
94 return perf_event__repipe_synth(tool, event); 92 return perf_event__repipe_synth(session->tool, event);
95} 93}
96 94
97static int perf_event__repipe_attr(struct perf_tool *tool, 95static int perf_event__repipe_attr(struct perf_tool *tool,
@@ -362,26 +360,24 @@ static int perf_event__repipe_exit(struct perf_tool *tool,
362 return err; 360 return err;
363} 361}
364 362
365static int perf_event__repipe_tracing_data(struct perf_tool *tool, 363static int perf_event__repipe_tracing_data(struct perf_session *session,
366 union perf_event *event, 364 union perf_event *event)
367 struct perf_session *session)
368{ 365{
369 int err; 366 int err;
370 367
371 perf_event__repipe_synth(tool, event); 368 perf_event__repipe_synth(session->tool, event);
372 err = perf_event__process_tracing_data(tool, event, session); 369 err = perf_event__process_tracing_data(session, event);
373 370
374 return err; 371 return err;
375} 372}
376 373
377static int perf_event__repipe_id_index(struct perf_tool *tool, 374static int perf_event__repipe_id_index(struct perf_session *session,
378 union perf_event *event, 375 union perf_event *event)
379 struct perf_session *session)
380{ 376{
381 int err; 377 int err;
382 378
383 perf_event__repipe_synth(tool, event); 379 perf_event__repipe_synth(session->tool, event);
384 err = perf_event__process_id_index(tool, event, session); 380 err = perf_event__process_id_index(session, event);
385 381
386 return err; 382 return err;
387} 383}
diff --git a/tools/perf/builtin-report.c b/tools/perf/builtin-report.c
index 76e12bcd1765..7507e4d6dce1 100644
--- a/tools/perf/builtin-report.c
+++ b/tools/perf/builtin-report.c
@@ -201,14 +201,13 @@ static void setup_forced_leader(struct report *report,
201 perf_evlist__force_leader(evlist); 201 perf_evlist__force_leader(evlist);
202} 202}
203 203
204static int process_feature_event(struct perf_tool *tool, 204static int process_feature_event(struct perf_session *session,
205 union perf_event *event, 205 union perf_event *event)
206 struct perf_session *session __maybe_unused)
207{ 206{
208 struct report *rep = container_of(tool, struct report, tool); 207 struct report *rep = container_of(session->tool, struct report, tool);
209 208
210 if (event->feat.feat_id < HEADER_LAST_FEATURE) 209 if (event->feat.feat_id < HEADER_LAST_FEATURE)
211 return perf_event__process_feature(tool, event, session); 210 return perf_event__process_feature(session, event);
212 211
213 if (event->feat.feat_id != HEADER_LAST_FEATURE) { 212 if (event->feat.feat_id != HEADER_LAST_FEATURE) {
214 pr_err("failed: wrong feature ID: %" PRIu64 "\n", 213 pr_err("failed: wrong feature ID: %" PRIu64 "\n",
diff --git a/tools/perf/builtin-script.c b/tools/perf/builtin-script.c
index 6176bae177c2..765391b6c88c 100644
--- a/tools/perf/builtin-script.c
+++ b/tools/perf/builtin-script.c
@@ -2965,9 +2965,8 @@ static void script__setup_sample_type(struct perf_script *script)
2965 } 2965 }
2966} 2966}
2967 2967
2968static int process_stat_round_event(struct perf_tool *tool __maybe_unused, 2968static int process_stat_round_event(struct perf_session *session,
2969 union perf_event *event, 2969 union perf_event *event)
2970 struct perf_session *session)
2971{ 2970{
2972 struct stat_round_event *round = &event->stat_round; 2971 struct stat_round_event *round = &event->stat_round;
2973 struct perf_evsel *counter; 2972 struct perf_evsel *counter;
@@ -2981,9 +2980,8 @@ static int process_stat_round_event(struct perf_tool *tool __maybe_unused,
2981 return 0; 2980 return 0;
2982} 2981}
2983 2982
2984static int process_stat_config_event(struct perf_tool *tool __maybe_unused, 2983static int process_stat_config_event(struct perf_session *session __maybe_unused,
2985 union perf_event *event, 2984 union perf_event *event)
2986 struct perf_session *session __maybe_unused)
2987{ 2985{
2988 perf_event__read_stat_config(&stat_config, &event->stat_config); 2986 perf_event__read_stat_config(&stat_config, &event->stat_config);
2989 return 0; 2987 return 0;
@@ -3009,10 +3007,10 @@ static int set_maps(struct perf_script *script)
3009} 3007}
3010 3008
3011static 3009static
3012int process_thread_map_event(struct perf_tool *tool, 3010int process_thread_map_event(struct perf_session *session,
3013 union perf_event *event, 3011 union perf_event *event)
3014 struct perf_session *session __maybe_unused)
3015{ 3012{
3013 struct perf_tool *tool = session->tool;
3016 struct perf_script *script = container_of(tool, struct perf_script, tool); 3014 struct perf_script *script = container_of(tool, struct perf_script, tool);
3017 3015
3018 if (script->threads) { 3016 if (script->threads) {
@@ -3028,10 +3026,10 @@ int process_thread_map_event(struct perf_tool *tool,
3028} 3026}
3029 3027
3030static 3028static
3031int process_cpu_map_event(struct perf_tool *tool __maybe_unused, 3029int process_cpu_map_event(struct perf_session *session,
3032 union perf_event *event, 3030 union perf_event *event)
3033 struct perf_session *session __maybe_unused)
3034{ 3031{
3032 struct perf_tool *tool = session->tool;
3035 struct perf_script *script = container_of(tool, struct perf_script, tool); 3033 struct perf_script *script = container_of(tool, struct perf_script, tool);
3036 3034
3037 if (script->cpus) { 3035 if (script->cpus) {
@@ -3046,21 +3044,21 @@ int process_cpu_map_event(struct perf_tool *tool __maybe_unused,
3046 return set_maps(script); 3044 return set_maps(script);
3047} 3045}
3048 3046
3049static int process_feature_event(struct perf_tool *tool, 3047static int process_feature_event(struct perf_session *session,
3050 union perf_event *event, 3048 union perf_event *event)
3051 struct perf_session *session)
3052{ 3049{
3053 if (event->feat.feat_id < HEADER_LAST_FEATURE) 3050 if (event->feat.feat_id < HEADER_LAST_FEATURE)
3054 return perf_event__process_feature(tool, event, session); 3051 return perf_event__process_feature(session, event);
3055 return 0; 3052 return 0;
3056} 3053}
3057 3054
3058#ifdef HAVE_AUXTRACE_SUPPORT 3055#ifdef HAVE_AUXTRACE_SUPPORT
3059static int perf_script__process_auxtrace_info(struct perf_tool *tool, 3056static int perf_script__process_auxtrace_info(struct perf_session *session,
3060 union perf_event *event, 3057 union perf_event *event)
3061 struct perf_session *session)
3062{ 3058{
3063 int ret = perf_event__process_auxtrace_info(tool, event, session); 3059 struct perf_tool *tool = session->tool;
3060
3061 int ret = perf_event__process_auxtrace_info(session, event);
3064 3062
3065 if (ret == 0) { 3063 if (ret == 0) {
3066 struct perf_script *script = container_of(tool, struct perf_script, tool); 3064 struct perf_script *script = container_of(tool, struct perf_script, tool);
diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c
index 0b0e3961d511..b86aba1c8028 100644
--- a/tools/perf/builtin-stat.c
+++ b/tools/perf/builtin-stat.c
@@ -1354,9 +1354,8 @@ static int __cmd_record(int argc, const char **argv)
1354 return argc; 1354 return argc;
1355} 1355}
1356 1356
1357static int process_stat_round_event(struct perf_tool *tool __maybe_unused, 1357static int process_stat_round_event(struct perf_session *session,
1358 union perf_event *event, 1358 union perf_event *event)
1359 struct perf_session *session)
1360{ 1359{
1361 struct stat_round_event *stat_round = &event->stat_round; 1360 struct stat_round_event *stat_round = &event->stat_round;
1362 struct perf_evsel *counter; 1361 struct perf_evsel *counter;
@@ -1381,10 +1380,10 @@ static int process_stat_round_event(struct perf_tool *tool __maybe_unused,
1381} 1380}
1382 1381
1383static 1382static
1384int process_stat_config_event(struct perf_tool *tool, 1383int process_stat_config_event(struct perf_session *session,
1385 union perf_event *event, 1384 union perf_event *event)
1386 struct perf_session *session __maybe_unused)
1387{ 1385{
1386 struct perf_tool *tool = session->tool;
1388 struct perf_stat *st = container_of(tool, struct perf_stat, tool); 1387 struct perf_stat *st = container_of(tool, struct perf_stat, tool);
1389 1388
1390 perf_event__read_stat_config(&stat_config, &event->stat_config); 1389 perf_event__read_stat_config(&stat_config, &event->stat_config);
@@ -1424,10 +1423,10 @@ static int set_maps(struct perf_stat *st)
1424} 1423}
1425 1424
1426static 1425static
1427int process_thread_map_event(struct perf_tool *tool, 1426int process_thread_map_event(struct perf_session *session,
1428 union perf_event *event, 1427 union perf_event *event)
1429 struct perf_session *session __maybe_unused)
1430{ 1428{
1429 struct perf_tool *tool = session->tool;
1431 struct perf_stat *st = container_of(tool, struct perf_stat, tool); 1430 struct perf_stat *st = container_of(tool, struct perf_stat, tool);
1432 1431
1433 if (st->threads) { 1432 if (st->threads) {
@@ -1443,10 +1442,10 @@ int process_thread_map_event(struct perf_tool *tool,
1443} 1442}
1444 1443
1445static 1444static
1446int process_cpu_map_event(struct perf_tool *tool, 1445int process_cpu_map_event(struct perf_session *session,
1447 union perf_event *event, 1446 union perf_event *event)
1448 struct perf_session *session __maybe_unused)
1449{ 1447{
1448 struct perf_tool *tool = session->tool;
1450 struct perf_stat *st = container_of(tool, struct perf_stat, tool); 1449 struct perf_stat *st = container_of(tool, struct perf_stat, tool);
1451 struct cpu_map *cpus; 1450 struct cpu_map *cpus;
1452 1451
diff --git a/tools/perf/util/auxtrace.c b/tools/perf/util/auxtrace.c
index db1511359c5e..86f0bc445f93 100644
--- a/tools/perf/util/auxtrace.c
+++ b/tools/perf/util/auxtrace.c
@@ -906,9 +906,8 @@ out_free:
906 return err; 906 return err;
907} 907}
908 908
909int perf_event__process_auxtrace_info(struct perf_tool *tool __maybe_unused, 909int perf_event__process_auxtrace_info(struct perf_session *session,
910 union perf_event *event, 910 union perf_event *event)
911 struct perf_session *session)
912{ 911{
913 enum auxtrace_type type = event->auxtrace_info.type; 912 enum auxtrace_type type = event->auxtrace_info.type;
914 913
@@ -1185,9 +1184,8 @@ void events_stats__auxtrace_error_warn(const struct events_stats *stats)
1185 } 1184 }
1186} 1185}
1187 1186
1188int perf_event__process_auxtrace_error(struct perf_tool *tool __maybe_unused, 1187int perf_event__process_auxtrace_error(struct perf_session *session,
1189 union perf_event *event, 1188 union perf_event *event)
1190 struct perf_session *session)
1191{ 1189{
1192 if (auxtrace__dont_decode(session)) 1190 if (auxtrace__dont_decode(session))
1193 return 0; 1191 return 0;
diff --git a/tools/perf/util/auxtrace.h b/tools/perf/util/auxtrace.h
index 71fc3bd74299..97776470a52e 100644
--- a/tools/perf/util/auxtrace.h
+++ b/tools/perf/util/auxtrace.h
@@ -517,15 +517,13 @@ int perf_event__synthesize_auxtrace_info(struct auxtrace_record *itr,
517 struct perf_tool *tool, 517 struct perf_tool *tool,
518 struct perf_session *session, 518 struct perf_session *session,
519 perf_event__handler_t process); 519 perf_event__handler_t process);
520int perf_event__process_auxtrace_info(struct perf_tool *tool, 520int perf_event__process_auxtrace_info(struct perf_session *session,
521 union perf_event *event, 521 union perf_event *event);
522 struct perf_session *session);
523s64 perf_event__process_auxtrace(struct perf_tool *tool, 522s64 perf_event__process_auxtrace(struct perf_tool *tool,
524 union perf_event *event, 523 union perf_event *event,
525 struct perf_session *session); 524 struct perf_session *session);
526int perf_event__process_auxtrace_error(struct perf_tool *tool, 525int perf_event__process_auxtrace_error(struct perf_session *session,
527 union perf_event *event, 526 union perf_event *event);
528 struct perf_session *session);
529int itrace_parse_synth_opts(const struct option *opt, const char *str, 527int itrace_parse_synth_opts(const struct option *opt, const char *str,
530 int unset); 528 int unset);
531void itrace_synth_opts__set_default(struct itrace_synth_opts *synth_opts); 529void itrace_synth_opts__set_default(struct itrace_synth_opts *synth_opts);
diff --git a/tools/perf/util/header.c b/tools/perf/util/header.c
index 91e6d9cfd906..c78051ad1fcc 100644
--- a/tools/perf/util/header.c
+++ b/tools/perf/util/header.c
@@ -3448,10 +3448,10 @@ int perf_event__synthesize_features(struct perf_tool *tool,
3448 return ret; 3448 return ret;
3449} 3449}
3450 3450
3451int perf_event__process_feature(struct perf_tool *tool, 3451int perf_event__process_feature(struct perf_session *session,
3452 union perf_event *event, 3452 union perf_event *event)
3453 struct perf_session *session __maybe_unused)
3454{ 3453{
3454 struct perf_tool *tool = session->tool;
3455 struct feat_fd ff = { .fd = 0 }; 3455 struct feat_fd ff = { .fd = 0 };
3456 struct feature_event *fe = (struct feature_event *)event; 3456 struct feature_event *fe = (struct feature_event *)event;
3457 int type = fe->header.type; 3457 int type = fe->header.type;
@@ -3856,9 +3856,8 @@ int perf_event__synthesize_tracing_data(struct perf_tool *tool, int fd,
3856 return aligned_size; 3856 return aligned_size;
3857} 3857}
3858 3858
3859int perf_event__process_tracing_data(struct perf_tool *tool __maybe_unused, 3859int perf_event__process_tracing_data(struct perf_session *session,
3860 union perf_event *event, 3860 union perf_event *event)
3861 struct perf_session *session)
3862{ 3861{
3863 ssize_t size_read, padding, size = event->tracing_data.size; 3862 ssize_t size_read, padding, size = event->tracing_data.size;
3864 int fd = perf_data__fd(session->data); 3863 int fd = perf_data__fd(session->data);
@@ -3924,9 +3923,8 @@ int perf_event__synthesize_build_id(struct perf_tool *tool,
3924 return err; 3923 return err;
3925} 3924}
3926 3925
3927int perf_event__process_build_id(struct perf_tool *tool __maybe_unused, 3926int perf_event__process_build_id(struct perf_session *session,
3928 union perf_event *event, 3927 union perf_event *event)
3929 struct perf_session *session)
3930{ 3928{
3931 __event_process_build_id(&event->build_id, 3929 __event_process_build_id(&event->build_id,
3932 event->build_id.filename, 3930 event->build_id.filename,
diff --git a/tools/perf/util/header.h b/tools/perf/util/header.h
index ff2a1263fb9b..e17903caa71d 100644
--- a/tools/perf/util/header.h
+++ b/tools/perf/util/header.h
@@ -116,9 +116,8 @@ int perf_event__synthesize_extra_attr(struct perf_tool *tool,
116 perf_event__handler_t process, 116 perf_event__handler_t process,
117 bool is_pipe); 117 bool is_pipe);
118 118
119int perf_event__process_feature(struct perf_tool *tool, 119int perf_event__process_feature(struct perf_session *session,
120 union perf_event *event, 120 union perf_event *event);
121 struct perf_session *session);
122 121
123int perf_event__synthesize_attr(struct perf_tool *tool, 122int perf_event__synthesize_attr(struct perf_tool *tool,
124 struct perf_event_attr *attr, u32 ids, u64 *id, 123 struct perf_event_attr *attr, u32 ids, u64 *id,
@@ -148,17 +147,15 @@ size_t perf_event__fprintf_event_update(union perf_event *event, FILE *fp);
148int perf_event__synthesize_tracing_data(struct perf_tool *tool, 147int perf_event__synthesize_tracing_data(struct perf_tool *tool,
149 int fd, struct perf_evlist *evlist, 148 int fd, struct perf_evlist *evlist,
150 perf_event__handler_t process); 149 perf_event__handler_t process);
151int perf_event__process_tracing_data(struct perf_tool *tool, 150int perf_event__process_tracing_data(struct perf_session *session,
152 union perf_event *event, 151 union perf_event *event);
153 struct perf_session *session);
154 152
155int perf_event__synthesize_build_id(struct perf_tool *tool, 153int perf_event__synthesize_build_id(struct perf_tool *tool,
156 struct dso *pos, u16 misc, 154 struct dso *pos, u16 misc,
157 perf_event__handler_t process, 155 perf_event__handler_t process,
158 struct machine *machine); 156 struct machine *machine);
159int perf_event__process_build_id(struct perf_tool *tool, 157int perf_event__process_build_id(struct perf_session *session,
160 union perf_event *event, 158 union perf_event *event);
161 struct perf_session *session);
162bool is_perf_magic(u64 magic); 159bool is_perf_magic(u64 magic);
163 160
164#define NAME_ALIGN 64 161#define NAME_ALIGN 64
diff --git a/tools/perf/util/session.c b/tools/perf/util/session.c
index 8b9369303561..e781cdba845c 100644
--- a/tools/perf/util/session.c
+++ b/tools/perf/util/session.c
@@ -199,12 +199,10 @@ void perf_session__delete(struct perf_session *session)
199 free(session); 199 free(session);
200} 200}
201 201
202static int process_event_synth_tracing_data_stub(struct perf_tool *tool 202static int process_event_synth_tracing_data_stub(struct perf_session *session
203 __maybe_unused, 203 __maybe_unused,
204 union perf_event *event 204 union perf_event *event
205 __maybe_unused, 205 __maybe_unused)
206 struct perf_session *session
207 __maybe_unused)
208{ 206{
209 dump_printf(": unhandled!\n"); 207 dump_printf(": unhandled!\n");
210 return 0; 208 return 0;
@@ -288,9 +286,8 @@ static s64 process_event_auxtrace_stub(struct perf_tool *tool __maybe_unused,
288 return event->auxtrace.size; 286 return event->auxtrace.size;
289} 287}
290 288
291static int process_event_op2_stub(struct perf_tool *tool __maybe_unused, 289static int process_event_op2_stub(struct perf_session *session __maybe_unused,
292 union perf_event *event __maybe_unused, 290 union perf_event *event __maybe_unused)
293 struct perf_session *session __maybe_unused)
294{ 291{
295 dump_printf(": unhandled!\n"); 292 dump_printf(": unhandled!\n");
296 return 0; 293 return 0;
@@ -298,9 +295,8 @@ static int process_event_op2_stub(struct perf_tool *tool __maybe_unused,
298 295
299 296
300static 297static
301int process_event_thread_map_stub(struct perf_tool *tool __maybe_unused, 298int process_event_thread_map_stub(struct perf_session *session __maybe_unused,
302 union perf_event *event __maybe_unused, 299 union perf_event *event __maybe_unused)
303 struct perf_session *session __maybe_unused)
304{ 300{
305 if (dump_trace) 301 if (dump_trace)
306 perf_event__fprintf_thread_map(event, stdout); 302 perf_event__fprintf_thread_map(event, stdout);
@@ -310,9 +306,8 @@ int process_event_thread_map_stub(struct perf_tool *tool __maybe_unused,
310} 306}
311 307
312static 308static
313int process_event_cpu_map_stub(struct perf_tool *tool __maybe_unused, 309int process_event_cpu_map_stub(struct perf_session *session __maybe_unused,
314 union perf_event *event __maybe_unused, 310 union perf_event *event __maybe_unused)
315 struct perf_session *session __maybe_unused)
316{ 311{
317 if (dump_trace) 312 if (dump_trace)
318 perf_event__fprintf_cpu_map(event, stdout); 313 perf_event__fprintf_cpu_map(event, stdout);
@@ -322,9 +317,8 @@ int process_event_cpu_map_stub(struct perf_tool *tool __maybe_unused,
322} 317}
323 318
324static 319static
325int process_event_stat_config_stub(struct perf_tool *tool __maybe_unused, 320int process_event_stat_config_stub(struct perf_session *session __maybe_unused,
326 union perf_event *event __maybe_unused, 321 union perf_event *event __maybe_unused)
327 struct perf_session *session __maybe_unused)
328{ 322{
329 if (dump_trace) 323 if (dump_trace)
330 perf_event__fprintf_stat_config(event, stdout); 324 perf_event__fprintf_stat_config(event, stdout);
@@ -333,10 +327,8 @@ int process_event_stat_config_stub(struct perf_tool *tool __maybe_unused,
333 return 0; 327 return 0;
334} 328}
335 329
336static int process_stat_stub(struct perf_tool *tool __maybe_unused, 330static int process_stat_stub(struct perf_session *perf_session __maybe_unused,
337 union perf_event *event __maybe_unused, 331 union perf_event *event)
338 struct perf_session *perf_session
339 __maybe_unused)
340{ 332{
341 if (dump_trace) 333 if (dump_trace)
342 perf_event__fprintf_stat(event, stdout); 334 perf_event__fprintf_stat(event, stdout);
@@ -345,10 +337,8 @@ static int process_stat_stub(struct perf_tool *tool __maybe_unused,
345 return 0; 337 return 0;
346} 338}
347 339
348static int process_stat_round_stub(struct perf_tool *tool __maybe_unused, 340static int process_stat_round_stub(struct perf_session *perf_session __maybe_unused,
349 union perf_event *event __maybe_unused, 341 union perf_event *event)
350 struct perf_session *perf_session
351 __maybe_unused)
352{ 342{
353 if (dump_trace) 343 if (dump_trace)
354 perf_event__fprintf_stat_round(event, stdout); 344 perf_event__fprintf_stat_round(event, stdout);
@@ -1374,37 +1364,37 @@ static s64 perf_session__process_user_event(struct perf_session *session,
1374 case PERF_RECORD_HEADER_TRACING_DATA: 1364 case PERF_RECORD_HEADER_TRACING_DATA:
1375 /* setup for reading amidst mmap */ 1365 /* setup for reading amidst mmap */
1376 lseek(fd, file_offset, SEEK_SET); 1366 lseek(fd, file_offset, SEEK_SET);
1377 return tool->tracing_data(tool, event, session); 1367 return tool->tracing_data(session, event);
1378 case PERF_RECORD_HEADER_BUILD_ID: 1368 case PERF_RECORD_HEADER_BUILD_ID:
1379 return tool->build_id(tool, event, session); 1369 return tool->build_id(session, event);
1380 case PERF_RECORD_FINISHED_ROUND: 1370 case PERF_RECORD_FINISHED_ROUND:
1381 return tool->finished_round(tool, event, oe); 1371 return tool->finished_round(tool, event, oe);
1382 case PERF_RECORD_ID_INDEX: 1372 case PERF_RECORD_ID_INDEX:
1383 return tool->id_index(tool, event, session); 1373 return tool->id_index(session, event);
1384 case PERF_RECORD_AUXTRACE_INFO: 1374 case PERF_RECORD_AUXTRACE_INFO:
1385 return tool->auxtrace_info(tool, event, session); 1375 return tool->auxtrace_info(session, event);
1386 case PERF_RECORD_AUXTRACE: 1376 case PERF_RECORD_AUXTRACE:
1387 /* setup for reading amidst mmap */ 1377 /* setup for reading amidst mmap */
1388 lseek(fd, file_offset + event->header.size, SEEK_SET); 1378 lseek(fd, file_offset + event->header.size, SEEK_SET);
1389 return tool->auxtrace(tool, event, session); 1379 return tool->auxtrace(tool, event, session);
1390 case PERF_RECORD_AUXTRACE_ERROR: 1380 case PERF_RECORD_AUXTRACE_ERROR:
1391 perf_session__auxtrace_error_inc(session, event); 1381 perf_session__auxtrace_error_inc(session, event);
1392 return tool->auxtrace_error(tool, event, session); 1382 return tool->auxtrace_error(session, event);
1393 case PERF_RECORD_THREAD_MAP: 1383 case PERF_RECORD_THREAD_MAP:
1394 return tool->thread_map(tool, event, session); 1384 return tool->thread_map(session, event);
1395 case PERF_RECORD_CPU_MAP: 1385 case PERF_RECORD_CPU_MAP:
1396 return tool->cpu_map(tool, event, session); 1386 return tool->cpu_map(session, event);
1397 case PERF_RECORD_STAT_CONFIG: 1387 case PERF_RECORD_STAT_CONFIG:
1398 return tool->stat_config(tool, event, session); 1388 return tool->stat_config(session, event);
1399 case PERF_RECORD_STAT: 1389 case PERF_RECORD_STAT:
1400 return tool->stat(tool, event, session); 1390 return tool->stat(session, event);
1401 case PERF_RECORD_STAT_ROUND: 1391 case PERF_RECORD_STAT_ROUND:
1402 return tool->stat_round(tool, event, session); 1392 return tool->stat_round(session, event);
1403 case PERF_RECORD_TIME_CONV: 1393 case PERF_RECORD_TIME_CONV:
1404 session->time_conv = event->time_conv; 1394 session->time_conv = event->time_conv;
1405 return tool->time_conv(tool, event, session); 1395 return tool->time_conv(session, event);
1406 case PERF_RECORD_HEADER_FEATURE: 1396 case PERF_RECORD_HEADER_FEATURE:
1407 return tool->feature(tool, event, session); 1397 return tool->feature(session, event);
1408 default: 1398 default:
1409 return -EINVAL; 1399 return -EINVAL;
1410 } 1400 }
@@ -2133,9 +2123,8 @@ out:
2133 return err; 2123 return err;
2134} 2124}
2135 2125
2136int perf_event__process_id_index(struct perf_tool *tool __maybe_unused, 2126int perf_event__process_id_index(struct perf_session *session,
2137 union perf_event *event, 2127 union perf_event *event)
2138 struct perf_session *session)
2139{ 2128{
2140 struct perf_evlist *evlist = session->evlist; 2129 struct perf_evlist *evlist = session->evlist;
2141 struct id_index_event *ie = &event->id_index; 2130 struct id_index_event *ie = &event->id_index;
diff --git a/tools/perf/util/session.h b/tools/perf/util/session.h
index da40b4b380ca..d96eccd7d27f 100644
--- a/tools/perf/util/session.h
+++ b/tools/perf/util/session.h
@@ -120,9 +120,8 @@ int perf_session__deliver_synth_event(struct perf_session *session,
120 union perf_event *event, 120 union perf_event *event,
121 struct perf_sample *sample); 121 struct perf_sample *sample);
122 122
123int perf_event__process_id_index(struct perf_tool *tool, 123int perf_event__process_id_index(struct perf_session *session,
124 union perf_event *event, 124 union perf_event *event);
125 struct perf_session *session);
126 125
127int perf_event__synthesize_id_index(struct perf_tool *tool, 126int perf_event__synthesize_id_index(struct perf_tool *tool,
128 perf_event__handler_t process, 127 perf_event__handler_t process,
diff --git a/tools/perf/util/stat.c b/tools/perf/util/stat.c
index 5d3172bcc4ae..4d40515307b8 100644
--- a/tools/perf/util/stat.c
+++ b/tools/perf/util/stat.c
@@ -374,9 +374,8 @@ int perf_stat_process_counter(struct perf_stat_config *config,
374 return 0; 374 return 0;
375} 375}
376 376
377int perf_event__process_stat_event(struct perf_tool *tool __maybe_unused, 377int perf_event__process_stat_event(struct perf_session *session,
378 union perf_event *event, 378 union perf_event *event)
379 struct perf_session *session)
380{ 379{
381 struct perf_counts_values count; 380 struct perf_counts_values count;
382 struct stat_event *st = &event->stat; 381 struct stat_event *st = &event->stat;
diff --git a/tools/perf/util/stat.h b/tools/perf/util/stat.h
index 3a13a6dc5a62..2f9c9159a364 100644
--- a/tools/perf/util/stat.h
+++ b/tools/perf/util/stat.h
@@ -199,9 +199,8 @@ int perf_stat_process_counter(struct perf_stat_config *config,
199struct perf_tool; 199struct perf_tool;
200union perf_event; 200union perf_event;
201struct perf_session; 201struct perf_session;
202int perf_event__process_stat_event(struct perf_tool *tool, 202int perf_event__process_stat_event(struct perf_session *session,
203 union perf_event *event, 203 union perf_event *event);
204 struct perf_session *session);
205 204
206size_t perf_event__fprintf_stat(union perf_event *event, FILE *fp); 205size_t perf_event__fprintf_stat(union perf_event *event, FILE *fp);
207size_t perf_event__fprintf_stat_round(union perf_event *event, FILE *fp); 206size_t perf_event__fprintf_stat_round(union perf_event *event, FILE *fp);
diff --git a/tools/perf/util/tool.h b/tools/perf/util/tool.h
index 183c91453522..9c7f78d76275 100644
--- a/tools/perf/util/tool.h
+++ b/tools/perf/util/tool.h
@@ -26,8 +26,7 @@ typedef int (*event_attr_op)(struct perf_tool *tool,
26 union perf_event *event, 26 union perf_event *event,
27 struct perf_evlist **pevlist); 27 struct perf_evlist **pevlist);
28 28
29typedef int (*event_op2)(struct perf_tool *tool, union perf_event *event, 29typedef int (*event_op2)(struct perf_session *session, union perf_event *event);
30 struct perf_session *session);
31 30
32typedef int (*event_oe)(struct perf_tool *tool, union perf_event *event, 31typedef int (*event_oe)(struct perf_tool *tool, union perf_event *event,
33 struct ordered_events *oe); 32 struct ordered_events *oe);