perf intel-pt: Factor out intel_pt_reposition()
authorAdrian Hunter <adrian.hunter@intel.com>
Tue, 4 Jun 2019 13:00:04 +0000 (16:00 +0300)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Mon, 10 Jun 2019 19:20:12 +0000 (16:20 -0300)
Factor out intel_pt_reposition() so it can be reused.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Cc: Jin Yao <yao.jin@linux.intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Link: http://lkml.kernel.org/r/20190604130017.31207-7-adrian.hunter@intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/util/intel-pt-decoder/intel-pt-decoder.c

index c06dceb..70bff7b 100644 (file)
@@ -494,6 +494,14 @@ static inline void intel_pt_update_sample_time(struct intel_pt_decoder *decoder)
        decoder->sample_insn_cnt = decoder->timestamp_insn_cnt;
 }
 
+static void intel_pt_reposition(struct intel_pt_decoder *decoder)
+{
+       decoder->ip = 0;
+       decoder->pkt_state = INTEL_PT_STATE_NO_PSB;
+       decoder->timestamp = 0;
+       decoder->have_tma = false;
+}
+
 static int intel_pt_get_data(struct intel_pt_decoder *decoder)
 {
        struct intel_pt_buffer buffer = { .buf = 0, };
@@ -512,11 +520,8 @@ static int intel_pt_get_data(struct intel_pt_decoder *decoder)
                return -ENODATA;
        }
        if (!buffer.consecutive) {
-               decoder->ip = 0;
-               decoder->pkt_state = INTEL_PT_STATE_NO_PSB;
+               intel_pt_reposition(decoder);
                decoder->ref_timestamp = buffer.ref_timestamp;
-               decoder->timestamp = 0;
-               decoder->have_tma = false;
                decoder->state.trace_nr = buffer.trace_nr;
                intel_pt_log("Reference timestamp 0x%" PRIx64 "\n",
                             decoder->ref_timestamp);