diff options
| -rw-r--r-- | tools/perf/builtin-diff.c | 28 | 
1 files changed, 13 insertions, 15 deletions
| diff --git a/tools/perf/builtin-diff.c b/tools/perf/builtin-diff.c index 4c0567882a7a..28c5208fcdc9 100644 --- a/tools/perf/builtin-diff.c +++ b/tools/perf/builtin-diff.c @@ -467,21 +467,7 @@ out:  	return ret;  } -static struct perf_diff pdiff = { -	.tool = { -		.sample	= diff__process_sample_event, -		.mmap	= perf_event__process_mmap, -		.mmap2	= perf_event__process_mmap2, -		.comm	= perf_event__process_comm, -		.exit	= perf_event__process_exit, -		.fork	= perf_event__process_fork, -		.lost	= perf_event__process_lost, -		.namespaces = perf_event__process_namespaces, -		.cgroup = perf_event__process_cgroup, -		.ordered_events = true, -		.ordering_requires_timestamps = true, -	}, -}; +static struct perf_diff pdiff;  static struct evsel *evsel_match(struct evsel *evsel,  				      struct evlist *evlist) @@ -1959,6 +1945,18 @@ int cmd_diff(int argc, const char **argv)  	if (ret < 0)  		return ret; +	perf_tool__init(&pdiff.tool, /*ordered_events=*/true); +	pdiff.tool.sample	= diff__process_sample_event; +	pdiff.tool.mmap	= perf_event__process_mmap; +	pdiff.tool.mmap2	= perf_event__process_mmap2; +	pdiff.tool.comm	= perf_event__process_comm; +	pdiff.tool.exit	= perf_event__process_exit; +	pdiff.tool.fork	= perf_event__process_fork; +	pdiff.tool.lost	= perf_event__process_lost; +	pdiff.tool.namespaces = perf_event__process_namespaces; +	pdiff.tool.cgroup = perf_event__process_cgroup; +	pdiff.tool.ordering_requires_timestamps = true; +  	perf_config(diff__config, NULL);  	argc = parse_options(argc, argv, options, diff_usage, 0); | 
