lkml.org 
[lkml]   [2019]   [May]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 10/22] perf intel-pt: Re-factor TIP cases in intel_pt_walk_to_ip
    Date
    To make it easier to add new code for different TIP cases, separate each
    case.

    Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
    ---
    .../util/intel-pt-decoder/intel-pt-decoder.c | 23 ++++++++++++++-----
    1 file changed, 17 insertions(+), 6 deletions(-)

    diff --git a/tools/perf/util/intel-pt-decoder/intel-pt-decoder.c b/tools/perf/util/intel-pt-decoder/intel-pt-decoder.c
    index a2384a314990..99773445872d 100644
    --- a/tools/perf/util/intel-pt-decoder/intel-pt-decoder.c
    +++ b/tools/perf/util/intel-pt-decoder/intel-pt-decoder.c
    @@ -2128,18 +2128,29 @@ static int intel_pt_walk_to_ip(struct intel_pt_decoder *decoder)
    switch (decoder->packet.type) {
    case INTEL_PT_TIP_PGD:
    decoder->continuous_period = false;
    - __fallthrough;
    + decoder->pge = false;
    + if (intel_pt_have_ip(decoder))
    + intel_pt_set_ip(decoder);
    + if (!decoder->ip)
    + break;
    + decoder->state.type |= INTEL_PT_TRACE_END;
    + return 0;
    +
    case INTEL_PT_TIP_PGE:
    + decoder->pge = true;
    + if (intel_pt_have_ip(decoder))
    + intel_pt_set_ip(decoder);
    + if (!decoder->ip)
    + break;
    + decoder->state.type |= INTEL_PT_TRACE_BEGIN;
    + return 0;
    +
    case INTEL_PT_TIP:
    - decoder->pge = decoder->packet.type != INTEL_PT_TIP_PGD;
    + decoder->pge = true;
    if (intel_pt_have_ip(decoder))
    intel_pt_set_ip(decoder);
    if (!decoder->ip)
    break;
    - if (decoder->packet.type == INTEL_PT_TIP_PGE)
    - decoder->state.type |= INTEL_PT_TRACE_BEGIN;
    - if (decoder->packet.type == INTEL_PT_TIP_PGD)
    - decoder->state.type |= INTEL_PT_TRACE_END;
    return 0;

    case INTEL_PT_FUP:
    --
    2.17.1
    \
     
     \ /
      Last update: 2019-05-20 13:39    [W:4.090 / U:0.500 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site