diff options
author | Adrian Hunter <adrian.hunter@intel.com> | 2013-11-01 09:51:37 -0400 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2013-11-04 10:47:24 -0500 |
commit | 091a4ef5a94d46d26a05f0c32d2f64800ed91306 (patch) | |
tree | a2b906482a7fa260be3c2a2687fb2c57698f31af /tools/perf/tests | |
parent | 87b955247d71975460774435241be3aa05218a7b (diff) |
perf test: Update "sample parsing" test for PERF_SAMPLE_TRANSACTION
In fact the "sample parsing" test does not automatically check new
sample type bits - they must be added to the comparison logic.
Doing that shows that the test fails because the functions
perf_event__synthesize_sample() and perf_event__sample_event_size() have
not been updated with PERF_SAMPLE_TRANSACTION either.
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Cc: Andi Kleen <andi@firstfloor.org>
Cc: David Ahern <dsahern@gmail.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Namhyung Kim <namhyung@gmail.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Stephane Eranian <eranian@google.com>
Link: http://lkml.kernel.org/r/1383313899-15987-10-git-send-email-adrian.hunter@intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/tests')
-rw-r--r-- | tools/perf/tests/sample-parsing.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/tools/perf/tests/sample-parsing.c b/tools/perf/tests/sample-parsing.c index 61c9da2eb3a9..1b677202638d 100644 --- a/tools/perf/tests/sample-parsing.c +++ b/tools/perf/tests/sample-parsing.c | |||
@@ -121,6 +121,9 @@ static bool samples_same(const struct perf_sample *s1, | |||
121 | if (type & PERF_SAMPLE_DATA_SRC) | 121 | if (type & PERF_SAMPLE_DATA_SRC) |
122 | COMP(data_src); | 122 | COMP(data_src); |
123 | 123 | ||
124 | if (type & PERF_SAMPLE_TRANSACTION) | ||
125 | COMP(transaction); | ||
126 | |||
124 | return true; | 127 | return true; |
125 | } | 128 | } |
126 | 129 | ||
@@ -165,6 +168,7 @@ static int do_test(u64 sample_type, u64 sample_regs_user, u64 read_format) | |||
165 | .cpu = 110, | 168 | .cpu = 110, |
166 | .raw_size = sizeof(raw_data), | 169 | .raw_size = sizeof(raw_data), |
167 | .data_src = 111, | 170 | .data_src = 111, |
171 | .transaction = 112, | ||
168 | .raw_data = (void *)raw_data, | 172 | .raw_data = (void *)raw_data, |
169 | .callchain = &callchain.callchain, | 173 | .callchain = &callchain.callchain, |
170 | .branch_stack = &branch_stack.branch_stack, | 174 | .branch_stack = &branch_stack.branch_stack, |
@@ -273,7 +277,8 @@ int test__sample_parsing(void) | |||
273 | 277 | ||
274 | /* | 278 | /* |
275 | * Fail the test if it has not been updated when new sample format bits | 279 | * Fail the test if it has not been updated when new sample format bits |
276 | * were added. | 280 | * were added. Please actually update the test rather than just change |
281 | * the condition below. | ||
277 | */ | 282 | */ |
278 | if (PERF_SAMPLE_MAX > PERF_SAMPLE_TRANSACTION << 1) { | 283 | if (PERF_SAMPLE_MAX > PERF_SAMPLE_TRANSACTION << 1) { |
279 | pr_debug("sample format has changed, some new PERF_SAMPLE_ bit was introduced - test needs updating\n"); | 284 | pr_debug("sample format has changed, some new PERF_SAMPLE_ bit was introduced - test needs updating\n"); |