]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - releases/4.4.129/perf-intel-pt-fix-error-recovery-from-missing-tip-packet.patch
3.18-stable patches
[thirdparty/kernel/stable-queue.git] / releases / 4.4.129 / perf-intel-pt-fix-error-recovery-from-missing-tip-packet.patch
1 From 1c196a6c771c47a2faa63d38d913e03284f73a16 Mon Sep 17 00:00:00 2001
2 From: Adrian Hunter <adrian.hunter@intel.com>
3 Date: Wed, 7 Mar 2018 16:02:23 +0200
4 Subject: perf intel-pt: Fix error recovery from missing TIP packet
5
6 From: Adrian Hunter <adrian.hunter@intel.com>
7
8 commit 1c196a6c771c47a2faa63d38d913e03284f73a16 upstream.
9
10 When a TIP packet is expected but there is a different packet, it is an
11 error. However the unexpected packet might be something important like a
12 TSC packet, so after the error, it is necessary to continue from there,
13 rather than the next packet. That is achieved by setting pkt_step to
14 zero.
15
16 Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
17 Cc: Jiri Olsa <jolsa@redhat.com>
18 Cc: stable@vger.kernel.org
19 Link: http://lkml.kernel.org/r/1520431349-30689-4-git-send-email-adrian.hunter@intel.com
20 Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
21 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
22
23 ---
24 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c | 1 +
25 1 file changed, 1 insertion(+)
26
27 --- a/tools/perf/util/intel-pt-decoder/intel-pt-decoder.c
28 +++ b/tools/perf/util/intel-pt-decoder/intel-pt-decoder.c
29 @@ -1492,6 +1492,7 @@ static int intel_pt_walk_fup_tip(struct
30 case INTEL_PT_PSBEND:
31 intel_pt_log("ERROR: Missing TIP after FUP\n");
32 decoder->pkt_state = INTEL_PT_STATE_ERR3;
33 + decoder->pkt_step = 0;
34 return -ENOENT;
35
36 case INTEL_PT_OVF: