diff options
author | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2014-06-08 02:24:07 -0400 |
---|---|---|
committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2014-06-08 02:24:07 -0400 |
commit | a292241cccb7e20e8b997a9a44177e7c98141859 (patch) | |
tree | a0b0bb95e7dce3233a2d8b203f9e326cdec7a00e /tools/perf/tests/sample-parsing.c | |
parent | d49cb7aeebb974713f9f7ab2991352d3050b095b (diff) | |
parent | 68807a0c2015cb40df4869e16651f0ce5cc14d52 (diff) |
Merge branch 'next' into for-linus
Prepare input updates for 3.16.
Diffstat (limited to 'tools/perf/tests/sample-parsing.c')
-rw-r--r-- | tools/perf/tests/sample-parsing.c | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/tools/perf/tests/sample-parsing.c b/tools/perf/tests/sample-parsing.c index 1b677202638d..0014d3c8c21c 100644 --- a/tools/perf/tests/sample-parsing.c +++ b/tools/perf/tests/sample-parsing.c | |||
@@ -22,8 +22,8 @@ | |||
22 | } while (0) | 22 | } while (0) |
23 | 23 | ||
24 | static bool samples_same(const struct perf_sample *s1, | 24 | static bool samples_same(const struct perf_sample *s1, |
25 | const struct perf_sample *s2, u64 type, u64 regs_user, | 25 | const struct perf_sample *s2, |
26 | u64 read_format) | 26 | u64 type, u64 read_format) |
27 | { | 27 | { |
28 | size_t i; | 28 | size_t i; |
29 | 29 | ||
@@ -95,8 +95,9 @@ static bool samples_same(const struct perf_sample *s1, | |||
95 | } | 95 | } |
96 | 96 | ||
97 | if (type & PERF_SAMPLE_REGS_USER) { | 97 | if (type & PERF_SAMPLE_REGS_USER) { |
98 | size_t sz = hweight_long(regs_user) * sizeof(u64); | 98 | size_t sz = hweight_long(s1->user_regs.mask) * sizeof(u64); |
99 | 99 | ||
100 | COMP(user_regs.mask); | ||
100 | COMP(user_regs.abi); | 101 | COMP(user_regs.abi); |
101 | if (s1->user_regs.abi && | 102 | if (s1->user_regs.abi && |
102 | (!s1->user_regs.regs || !s2->user_regs.regs || | 103 | (!s1->user_regs.regs || !s2->user_regs.regs || |
@@ -174,6 +175,7 @@ static int do_test(u64 sample_type, u64 sample_regs_user, u64 read_format) | |||
174 | .branch_stack = &branch_stack.branch_stack, | 175 | .branch_stack = &branch_stack.branch_stack, |
175 | .user_regs = { | 176 | .user_regs = { |
176 | .abi = PERF_SAMPLE_REGS_ABI_64, | 177 | .abi = PERF_SAMPLE_REGS_ABI_64, |
178 | .mask = sample_regs_user, | ||
177 | .regs = user_regs, | 179 | .regs = user_regs, |
178 | }, | 180 | }, |
179 | .user_stack = { | 181 | .user_stack = { |
@@ -201,8 +203,7 @@ static int do_test(u64 sample_type, u64 sample_regs_user, u64 read_format) | |||
201 | sample.read.one.id = 99; | 203 | sample.read.one.id = 99; |
202 | } | 204 | } |
203 | 205 | ||
204 | sz = perf_event__sample_event_size(&sample, sample_type, | 206 | sz = perf_event__sample_event_size(&sample, sample_type, read_format); |
205 | sample_regs_user, read_format); | ||
206 | bufsz = sz + 4096; /* Add a bit for overrun checking */ | 207 | bufsz = sz + 4096; /* Add a bit for overrun checking */ |
207 | event = malloc(bufsz); | 208 | event = malloc(bufsz); |
208 | if (!event) { | 209 | if (!event) { |
@@ -215,8 +216,7 @@ static int do_test(u64 sample_type, u64 sample_regs_user, u64 read_format) | |||
215 | event->header.misc = 0; | 216 | event->header.misc = 0; |
216 | event->header.size = sz; | 217 | event->header.size = sz; |
217 | 218 | ||
218 | err = perf_event__synthesize_sample(event, sample_type, | 219 | err = perf_event__synthesize_sample(event, sample_type, read_format, |
219 | sample_regs_user, read_format, | ||
220 | &sample, false); | 220 | &sample, false); |
221 | if (err) { | 221 | if (err) { |
222 | pr_debug("%s failed for sample_type %#"PRIx64", error %d\n", | 222 | pr_debug("%s failed for sample_type %#"PRIx64", error %d\n", |
@@ -244,8 +244,7 @@ static int do_test(u64 sample_type, u64 sample_regs_user, u64 read_format) | |||
244 | goto out_free; | 244 | goto out_free; |
245 | } | 245 | } |
246 | 246 | ||
247 | if (!samples_same(&sample, &sample_out, sample_type, | 247 | if (!samples_same(&sample, &sample_out, sample_type, read_format)) { |
248 | sample_regs_user, read_format)) { | ||
249 | pr_debug("parsing failed for sample_type %#"PRIx64"\n", | 248 | pr_debug("parsing failed for sample_type %#"PRIx64"\n", |
250 | sample_type); | 249 | sample_type); |
251 | goto out_free; | 250 | goto out_free; |