perf intel-pt: Fix decoding to accept CBR between FUP and corresponding TIP

It is possible to have a CBR packet between a FUP packet and
corresponding TIP packet. Stop treating it as an error.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Cc: stable@vger.kernel.org
Link: http://lkml.kernel.org/r/1527762225-26024-3-git-send-email-adrian.hunter@intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
Adrian Hunter 2018-05-31 13:23:43 +03:00 committed by Arnaldo Carvalho de Melo
parent dbcb82b93f
commit bd2e49ec48

View File

@ -1604,7 +1604,6 @@ static int intel_pt_walk_fup_tip(struct intel_pt_decoder *decoder)
case INTEL_PT_PSB: case INTEL_PT_PSB:
case INTEL_PT_TSC: case INTEL_PT_TSC:
case INTEL_PT_TMA: case INTEL_PT_TMA:
case INTEL_PT_CBR:
case INTEL_PT_MODE_TSX: case INTEL_PT_MODE_TSX:
case INTEL_PT_BAD: case INTEL_PT_BAD:
case INTEL_PT_PSBEND: case INTEL_PT_PSBEND:
@ -1620,6 +1619,10 @@ static int intel_pt_walk_fup_tip(struct intel_pt_decoder *decoder)
decoder->pkt_step = 0; decoder->pkt_step = 0;
return -ENOENT; return -ENOENT;
case INTEL_PT_CBR:
intel_pt_calc_cbr(decoder);
break;
case INTEL_PT_OVF: case INTEL_PT_OVF:
return intel_pt_overflow(decoder); return intel_pt_overflow(decoder);