diff options
author | Namhyung Kim <namhyung@kernel.org> | 2014-05-11 20:56:42 -0400 |
---|---|---|
committer | Jiri Olsa <jolsa@kernel.org> | 2014-05-12 05:09:50 -0400 |
commit | 13ce34df11833482cd698331fdbb3f8ced06340d (patch) | |
tree | 9831bc0915afd571535d6649497cb4a5f62f3411 /tools/perf/tests | |
parent | bac1e4d103f7e3d82e5dc7423c04edcb8c899c22 (diff) |
perf tools: Use tid for finding thread
I believe that passing pid (instead of tid) as the 3rd arg of the
machine__find*_thread() was to find a main thread so that it can
search proper map group for symbols. However with the map sharing
patch applied, it now can do it in any thread.
It fixes a bug when each thread has different name, it only reports a
main thread for samples in other threads.
Cc: Adrian Hunter <adrian.hunter@intel.com>
Acked-by: David Ahern <dsahern@gmail.com>
Acked-by: Stephane Eranian <eranian@google.com>
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Link: http://lkml.kernel.org/r/1399856202-26221-1-git-send-email-namhyung@kernel.org
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
Diffstat (limited to 'tools/perf/tests')
-rw-r--r-- | tools/perf/tests/code-reading.c | 2 | ||||
-rw-r--r-- | tools/perf/tests/hists_filter.c | 1 | ||||
-rw-r--r-- | tools/perf/tests/hists_link.c | 2 |
3 files changed, 4 insertions, 1 deletions
diff --git a/tools/perf/tests/code-reading.c b/tools/perf/tests/code-reading.c index adf3de3e38d6..67f2d6323558 100644 --- a/tools/perf/tests/code-reading.c +++ b/tools/perf/tests/code-reading.c | |||
@@ -256,7 +256,7 @@ static int process_sample_event(struct machine *machine, | |||
256 | return -1; | 256 | return -1; |
257 | } | 257 | } |
258 | 258 | ||
259 | thread = machine__findnew_thread(machine, sample.pid, sample.pid); | 259 | thread = machine__findnew_thread(machine, sample.pid, sample.tid); |
260 | if (!thread) { | 260 | if (!thread) { |
261 | pr_debug("machine__findnew_thread failed\n"); | 261 | pr_debug("machine__findnew_thread failed\n"); |
262 | return -1; | 262 | return -1; |
diff --git a/tools/perf/tests/hists_filter.c b/tools/perf/tests/hists_filter.c index 23dc2f4d12c3..4617a8bee29b 100644 --- a/tools/perf/tests/hists_filter.c +++ b/tools/perf/tests/hists_filter.c | |||
@@ -69,6 +69,7 @@ static int add_hist_entries(struct perf_evlist *evlist, struct machine *machine) | |||
69 | evsel->hists.symbol_filter_str = NULL; | 69 | evsel->hists.symbol_filter_str = NULL; |
70 | 70 | ||
71 | sample.pid = fake_samples[i].pid; | 71 | sample.pid = fake_samples[i].pid; |
72 | sample.tid = fake_samples[i].pid; | ||
72 | sample.ip = fake_samples[i].ip; | 73 | sample.ip = fake_samples[i].ip; |
73 | 74 | ||
74 | if (perf_event__preprocess_sample(&event, machine, &al, | 75 | if (perf_event__preprocess_sample(&event, machine, &al, |
diff --git a/tools/perf/tests/hists_link.c b/tools/perf/tests/hists_link.c index e42d6790811a..b009bbf440d9 100644 --- a/tools/perf/tests/hists_link.c +++ b/tools/perf/tests/hists_link.c | |||
@@ -81,6 +81,7 @@ static int add_hist_entries(struct perf_evlist *evlist, struct machine *machine) | |||
81 | }; | 81 | }; |
82 | 82 | ||
83 | sample.pid = fake_common_samples[k].pid; | 83 | sample.pid = fake_common_samples[k].pid; |
84 | sample.tid = fake_common_samples[k].pid; | ||
84 | sample.ip = fake_common_samples[k].ip; | 85 | sample.ip = fake_common_samples[k].ip; |
85 | if (perf_event__preprocess_sample(&event, machine, &al, | 86 | if (perf_event__preprocess_sample(&event, machine, &al, |
86 | &sample) < 0) | 87 | &sample) < 0) |
@@ -104,6 +105,7 @@ static int add_hist_entries(struct perf_evlist *evlist, struct machine *machine) | |||
104 | }; | 105 | }; |
105 | 106 | ||
106 | sample.pid = fake_samples[i][k].pid; | 107 | sample.pid = fake_samples[i][k].pid; |
108 | sample.tid = fake_samples[i][k].pid; | ||
107 | sample.ip = fake_samples[i][k].ip; | 109 | sample.ip = fake_samples[i][k].ip; |
108 | if (perf_event__preprocess_sample(&event, machine, &al, | 110 | if (perf_event__preprocess_sample(&event, machine, &al, |
109 | &sample) < 0) | 111 | &sample) < 0) |