aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf/util/machine.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@kernel.org>2017-10-03 12:30:24 -0400
committerIngo Molnar <mingo@kernel.org>2017-10-03 12:30:24 -0400
commit4b50239a769e78bbe362fc92c3f8bd5415a4a5f5 (patch)
tree951832e213945ede19cd676a04e5218e68afd074 /tools/perf/util/machine.c
parenta47ba4d77e1236d214e5116b5631bc4c2d6e6369 (diff)
parentf6a9820d572bd8384d982357cbad214b3a6c04bb (diff)
Merge tag 'perf-core-for-mingo-4.15-20171003' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core
Pull perf/core improvements and fixes from Arnaldo Carvalho de Melo: - Multithread the synthesizing of PERF_RECORD_ events for pre-existing threads in 'perf top', speeding up that phase, greatly improving the user experience in systems such as Intel's Knights Mill (Kan Liang) - 'perf test' fixes for the perf_event_attr test case (Jiri Olsa, Thomas Richter) Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'tools/perf/util/machine.c')
-rw-r--r--tools/perf/util/machine.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/tools/perf/util/machine.c b/tools/perf/util/machine.c
index 585b4a3d64a4..7c3aa479201a 100644
--- a/tools/perf/util/machine.c
+++ b/tools/perf/util/machine.c
@@ -2218,12 +2218,16 @@ int machines__for_each_thread(struct machines *machines,
2218int __machine__synthesize_threads(struct machine *machine, struct perf_tool *tool, 2218int __machine__synthesize_threads(struct machine *machine, struct perf_tool *tool,
2219 struct target *target, struct thread_map *threads, 2219 struct target *target, struct thread_map *threads,
2220 perf_event__handler_t process, bool data_mmap, 2220 perf_event__handler_t process, bool data_mmap,
2221 unsigned int proc_map_timeout) 2221 unsigned int proc_map_timeout,
2222 unsigned int nr_threads_synthesize)
2222{ 2223{
2223 if (target__has_task(target)) 2224 if (target__has_task(target))
2224 return perf_event__synthesize_thread_map(tool, threads, process, machine, data_mmap, proc_map_timeout); 2225 return perf_event__synthesize_thread_map(tool, threads, process, machine, data_mmap, proc_map_timeout);
2225 else if (target__has_cpu(target)) 2226 else if (target__has_cpu(target))
2226 return perf_event__synthesize_threads(tool, process, machine, data_mmap, proc_map_timeout); 2227 return perf_event__synthesize_threads(tool, process,
2228 machine, data_mmap,
2229 proc_map_timeout,
2230 nr_threads_synthesize);
2227 /* command specified */ 2231 /* command specified */
2228 return 0; 2232 return 0;
2229} 2233}