diff options
author | Ingo Molnar <mingo@kernel.org> | 2017-10-03 12:30:24 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2017-10-03 12:30:24 -0400 |
commit | 4b50239a769e78bbe362fc92c3f8bd5415a4a5f5 (patch) | |
tree | 951832e213945ede19cd676a04e5218e68afd074 /tools/perf/util/machine.c | |
parent | a47ba4d77e1236d214e5116b5631bc4c2d6e6369 (diff) | |
parent | f6a9820d572bd8384d982357cbad214b3a6c04bb (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.c | 8 |
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, | |||
2218 | int __machine__synthesize_threads(struct machine *machine, struct perf_tool *tool, | 2218 | int __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 | } |