diff options
Diffstat (limited to 'tools/perf/util/intel-bts.c')
-rw-r--r-- | tools/perf/util/intel-bts.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/tools/perf/util/intel-bts.c b/tools/perf/util/intel-bts.c index abf1366e2a24..9df996085563 100644 --- a/tools/perf/util/intel-bts.c +++ b/tools/perf/util/intel-bts.c | |||
@@ -66,6 +66,7 @@ struct intel_bts { | |||
66 | u64 branches_id; | 66 | u64 branches_id; |
67 | size_t branches_event_size; | 67 | size_t branches_event_size; |
68 | bool synth_needs_swap; | 68 | bool synth_needs_swap; |
69 | unsigned long num_events; | ||
69 | }; | 70 | }; |
70 | 71 | ||
71 | struct intel_bts_queue { | 72 | struct intel_bts_queue { |
@@ -275,6 +276,10 @@ static int intel_bts_synth_branch_sample(struct intel_bts_queue *btsq, | |||
275 | union perf_event event; | 276 | union perf_event event; |
276 | struct perf_sample sample = { .ip = 0, }; | 277 | struct perf_sample sample = { .ip = 0, }; |
277 | 278 | ||
279 | if (bts->synth_opts.initial_skip && | ||
280 | bts->num_events++ <= bts->synth_opts.initial_skip) | ||
281 | return 0; | ||
282 | |||
278 | event.sample.header.type = PERF_RECORD_SAMPLE; | 283 | event.sample.header.type = PERF_RECORD_SAMPLE; |
279 | event.sample.header.misc = PERF_RECORD_MISC_USER; | 284 | event.sample.header.misc = PERF_RECORD_MISC_USER; |
280 | event.sample.header.size = sizeof(struct perf_event_header); | 285 | event.sample.header.size = sizeof(struct perf_event_header); |