Skip to content

Commit b7b61cb

Browse files
committed
perf ordered_events: Shorten function signatures
By keeping pointers to machines, evlist and tool in ordered_events. Cc: Adrian Hunter <[email protected]> Cc: Borislav Petkov <[email protected]> Cc: David Ahern <[email protected]> Cc: Don Zickus <[email protected]> Cc: Frederic Weisbecker <[email protected]> Cc: Jiri Olsa <[email protected]> Cc: Namhyung Kim <[email protected]> Cc: Stephane Eranian <[email protected]> Link: http://lkml.kernel.org/n/[email protected] Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
1 parent fa713a4 commit b7b61cb

19 files changed

+68
-83
lines changed

tools/perf/builtin-annotate.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -208,7 +208,7 @@ static int __cmd_annotate(struct perf_annotate *ann)
208208
goto out;
209209
}
210210

211-
ret = perf_session__process_events(session, &ann->tool);
211+
ret = perf_session__process_events(session);
212212
if (ret)
213213
goto out;
214214

tools/perf/builtin-buildid-list.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ static int perf_session__list_build_ids(bool force, bool with_hits)
7474
* the record stream. Buildids are stored as RECORD_HEADER_BUILD_ID
7575
*/
7676
if (with_hits || perf_data_file__is_pipe(&file))
77-
perf_session__process_events(session, &build_id__mark_dso_hit_ops);
77+
perf_session__process_events(session);
7878

7979
perf_session__fprintf_dsos_buildid(session, stdout, dso__skip_buildid, with_hits);
8080
perf_session__delete(session);

tools/perf/builtin-diff.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -747,7 +747,7 @@ static int __cmd_diff(void)
747747
goto out_delete;
748748
}
749749

750-
ret = perf_session__process_events(d->session, &tool);
750+
ret = perf_session__process_events(d->session);
751751
if (ret) {
752752
pr_err("Failed to process %s\n", d->file.path);
753753
goto out_delete;

tools/perf/builtin-inject.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -359,8 +359,6 @@ static int __cmd_inject(struct perf_inject *inject)
359359
} else if (inject->sched_stat) {
360360
struct perf_evsel *evsel;
361361

362-
inject->tool.ordered_events = true;
363-
364362
evlist__for_each(session->evlist, evsel) {
365363
const char *name = perf_evsel__name(evsel);
366364

@@ -379,7 +377,7 @@ static int __cmd_inject(struct perf_inject *inject)
379377
if (!file_out->is_pipe)
380378
lseek(fd, session->header.data_offset, SEEK_SET);
381379

382-
ret = perf_session__process_events(session, &inject->tool);
380+
ret = perf_session__process_events(session);
383381

384382
if (!file_out->is_pipe) {
385383
if (inject->build_ids)
@@ -458,6 +456,8 @@ int cmd_inject(int argc, const char **argv, const char *prefix __maybe_unused)
458456
return -1;
459457
}
460458

459+
inject.tool.ordered_events = inject.sched_stat;
460+
461461
file.path = inject.input_name;
462462
inject.session = perf_session__new(&file, true, &inject.tool);
463463
if (inject.session == NULL)

tools/perf/builtin-kmem.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -426,7 +426,7 @@ static int __cmd_kmem(struct perf_session *session)
426426
}
427427

428428
setup_pager();
429-
err = perf_session__process_events(session, &perf_kmem);
429+
err = perf_session__process_events(session);
430430
if (err != 0)
431431
goto out;
432432
sort_result();

tools/perf/builtin-kvm.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -730,9 +730,9 @@ static s64 perf_kvm__mmap_read_idx(struct perf_kvm_stat *kvm, int idx,
730730
return -1;
731731
}
732732

733-
err = perf_session_queue_event(kvm->session, event, &kvm->tool, &sample, 0);
733+
err = perf_session__queue_event(kvm->session, event, &sample, 0);
734734
/*
735-
* FIXME: Here we can't consume the event, as perf_session_queue_event will
735+
* FIXME: Here we can't consume the event, as perf_session__queue_event will
736736
* point to it, and it'll get possibly overwritten by the kernel.
737737
*/
738738
perf_evlist__mmap_consume(kvm->evlist, idx);
@@ -1066,7 +1066,7 @@ static int read_events(struct perf_kvm_stat *kvm)
10661066
if (ret < 0)
10671067
return ret;
10681068

1069-
return perf_session__process_events(kvm->session, &kvm->tool);
1069+
return perf_session__process_events(kvm->session);
10701070
}
10711071

10721072
static int parse_target_str(struct perf_kvm_stat *kvm)

tools/perf/builtin-lock.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -878,7 +878,7 @@ static int __cmd_report(bool display_info)
878878
if (select_key())
879879
goto out_delete;
880880

881-
err = perf_session__process_events(session, &eops);
881+
err = perf_session__process_events(session);
882882
if (err)
883883
goto out_delete;
884884

tools/perf/builtin-mem.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ static int report_raw_events(struct perf_mem *mem)
141141

142142
printf("# PID, TID, IP, ADDR, LOCAL WEIGHT, DSRC, SYMBOL\n");
143143

144-
err = perf_session__process_events(session, &mem->tool);
144+
err = perf_session__process_events(session);
145145
if (err)
146146
return err;
147147

tools/perf/builtin-record.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -225,7 +225,7 @@ static int process_buildids(struct record *rec)
225225
*/
226226
symbol_conf.ignore_vmlinux_buildid = true;
227227

228-
return perf_session__process_events(session, &rec->tool);
228+
return perf_session__process_events(session);
229229
}
230230

231231
static void perf_event__synthesize_guest_os(struct machine *machine, void *data)
@@ -343,7 +343,7 @@ static int __cmd_record(struct record *rec, int argc, const char **argv)
343343
signal(SIGINT, sig_handler);
344344
signal(SIGTERM, sig_handler);
345345

346-
session = perf_session__new(file, false, NULL);
346+
session = perf_session__new(file, false, tool);
347347
if (session == NULL) {
348348
pr_err("Perf session creation failed.\n");
349349
return -1;

tools/perf/builtin-report.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -482,7 +482,7 @@ static int __cmd_report(struct report *rep)
482482
if (ret)
483483
return ret;
484484

485-
ret = perf_session__process_events(session, &rep->tool);
485+
ret = perf_session__process_events(session);
486486
if (ret)
487487
return ret;
488488

tools/perf/builtin-sched.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1467,7 +1467,7 @@ static int perf_sched__read_events(struct perf_sched *sched)
14671467
goto out_delete;
14681468

14691469
if (perf_session__has_traces(session, "record -R")) {
1470-
int err = perf_session__process_events(session, &sched->tool);
1470+
int err = perf_session__process_events(session);
14711471
if (err) {
14721472
pr_err("Failed to process events, error %d", err);
14731473
goto out_delete;

tools/perf/builtin-script.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -800,7 +800,7 @@ static int __cmd_script(struct perf_script *script)
800800
script->tool.mmap2 = process_mmap2_event;
801801
}
802802

803-
ret = perf_session__process_events(script->session, &script->tool);
803+
ret = perf_session__process_events(script->session);
804804

805805
if (debug_mode)
806806
pr_err("Misordered timestamps: %" PRIu64 "\n", nr_unordered);

tools/perf/builtin-timechart.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1623,7 +1623,7 @@ static int __cmd_timechart(struct timechart *tchart, const char *output_name)
16231623
goto out_delete;
16241624
}
16251625

1626-
ret = perf_session__process_events(session, &tchart->tool);
1626+
ret = perf_session__process_events(session);
16271627
if (ret)
16281628
goto out_delete;
16291629

tools/perf/builtin-trace.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2408,7 +2408,7 @@ static int trace__replay(struct trace *trace)
24082408

24092409
setup_pager();
24102410

2411-
err = perf_session__process_events(session, &trace->tool);
2411+
err = perf_session__process_events(session);
24122412
if (err)
24132413
pr_err("Failed to process events, error %d", err);
24142414

tools/perf/util/data-convert-bt.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -579,7 +579,7 @@ int bt_convert__perf2ctf(const char *input, const char *path)
579579
return -1;
580580

581581
/* perf.data session */
582-
session = perf_session__new(&file, 0, NULL);
582+
session = perf_session__new(&file, 0, &c.tool);
583583
if (!session)
584584
goto free_writer;
585585

@@ -591,7 +591,7 @@ int bt_convert__perf2ctf(const char *input, const char *path)
591591
if (setup_events(cw, session))
592592
goto free_session;
593593

594-
err = perf_session__process_events(session, &c.tool);
594+
err = perf_session__process_events(session);
595595
if (!err)
596596
err = bt_ctf_stream_flush(cw->stream);
597597

tools/perf/util/ordered-events.c

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -153,10 +153,7 @@ void ordered_events__delete(struct ordered_events *oe, struct ordered_event *eve
153153
free_dup_event(oe, event->event);
154154
}
155155

156-
static int __ordered_events__flush(struct ordered_events *oe,
157-
struct machines *machines,
158-
struct perf_evlist *evlist,
159-
struct perf_tool *tool)
156+
static int __ordered_events__flush(struct ordered_events *oe)
160157
{
161158
struct list_head *head = &oe->events;
162159
struct ordered_event *tmp, *iter;
@@ -180,12 +177,12 @@ static int __ordered_events__flush(struct ordered_events *oe,
180177
if (iter->timestamp > limit)
181178
break;
182179

183-
ret = perf_evlist__parse_sample(evlist, iter->event, &sample);
180+
ret = perf_evlist__parse_sample(oe->evlist, iter->event, &sample);
184181
if (ret)
185182
pr_err("Can't parse sample, err = %d\n", ret);
186183
else {
187-
ret = machines__deliver_event(machines, evlist, iter->event,
188-
&sample, tool, iter->file_offset);
184+
ret = machines__deliver_event(oe->machines, oe->evlist, iter->event,
185+
&sample, oe->tool, iter->file_offset);
189186
if (ret)
190187
return ret;
191188
}
@@ -205,9 +202,7 @@ static int __ordered_events__flush(struct ordered_events *oe,
205202
return 0;
206203
}
207204

208-
int ordered_events__flush(struct ordered_events *oe, struct machines *machines,
209-
struct perf_evlist *evlist, struct perf_tool *tool,
210-
enum oe_flush how)
205+
int ordered_events__flush(struct ordered_events *oe, enum oe_flush how)
211206
{
212207
static const char * const str[] = {
213208
"NONE",
@@ -252,7 +247,7 @@ int ordered_events__flush(struct ordered_events *oe, struct machines *machines,
252247
str[how], oe->nr_events);
253248
pr_oe_time(oe->max_timestamp, "max_timestamp\n");
254249

255-
err = __ordered_events__flush(oe, machines, evlist, tool);
250+
err = __ordered_events__flush(oe);
256251

257252
if (!err) {
258253
if (how == OE_FLUSH__ROUND)
@@ -268,13 +263,17 @@ int ordered_events__flush(struct ordered_events *oe, struct machines *machines,
268263
return err;
269264
}
270265

271-
void ordered_events__init(struct ordered_events *oe)
266+
void ordered_events__init(struct ordered_events *oe, struct machines *machines,
267+
struct perf_evlist *evlist, struct perf_tool *tool)
272268
{
273269
INIT_LIST_HEAD(&oe->events);
274270
INIT_LIST_HEAD(&oe->cache);
275271
INIT_LIST_HEAD(&oe->to_free);
276272
oe->max_alloc_size = (u64) -1;
277273
oe->cur_alloc_size = 0;
274+
oe->evlist = evlist;
275+
oe->machines = machines;
276+
oe->tool = tool;
278277
}
279278

280279
void ordered_events__free(struct ordered_events *oe)

tools/perf/util/ordered-events.h

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,9 @@ struct ordered_events {
3232
struct list_head to_free;
3333
struct ordered_event *buffer;
3434
struct ordered_event *last;
35+
struct machines *machines;
36+
struct perf_evlist *evlist;
37+
struct perf_tool *tool;
3538
int buffer_idx;
3639
unsigned int nr_events;
3740
enum oe_flush last_flush_type;
@@ -41,10 +44,9 @@ struct ordered_events {
4144
struct ordered_event *ordered_events__new(struct ordered_events *oe, u64 timestamp,
4245
union perf_event *event);
4346
void ordered_events__delete(struct ordered_events *oe, struct ordered_event *event);
44-
int ordered_events__flush(struct ordered_events *oe, struct machines *machines,
45-
struct perf_evlist *evlist, struct perf_tool *tool,
46-
enum oe_flush how);
47-
void ordered_events__init(struct ordered_events *oe);
47+
int ordered_events__flush(struct ordered_events *oe, enum oe_flush how);
48+
void ordered_events__init(struct ordered_events *oe, struct machines *machines,
49+
struct perf_evlist *evlsit, struct perf_tool *tool);
4850
void ordered_events__free(struct ordered_events *oe);
4951

5052
static inline

0 commit comments

Comments
 (0)