perf script: Display Intel PT iflag synthesized event
Similar to other Intel PT synth events, display changes to the interrupt flag represented by the MODE.Exec packet. Signed-off-by: Adrian Hunter <adrian.hunter@intel.com> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com> Cc: Andi Kleen <ak@linux.intel.com> Cc: Jiri Olsa <jolsa@redhat.com> Link: https://lore.kernel.org/r/20220124084201.2699795-20-adrian.hunter@intel.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
committed by
Arnaldo Carvalho de Melo
parent
5b11749b36
commit
a48b96ca5a
@@ -1848,6 +1848,19 @@ static int perf_sample__fprintf_synth_evt(struct perf_sample *sample, FILE *fp)
|
|||||||
return len + perf_sample__fprintf_pt_spacing(len, fp);
|
return len + perf_sample__fprintf_pt_spacing(len, fp);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int perf_sample__fprintf_synth_iflag_chg(struct perf_sample *sample, FILE *fp)
|
||||||
|
{
|
||||||
|
struct perf_synth_intel_iflag_chg *data = perf_sample__synth_ptr(sample);
|
||||||
|
int len;
|
||||||
|
|
||||||
|
if (perf_sample__bad_synth_size(sample, *data))
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
len = fprintf(fp, " IFLAG: %d->%d %s branch", !data->iflag, data->iflag,
|
||||||
|
data->via_branch ? "via" : "non");
|
||||||
|
return len + perf_sample__fprintf_pt_spacing(len, fp);
|
||||||
|
}
|
||||||
|
|
||||||
static int perf_sample__fprintf_synth(struct perf_sample *sample,
|
static int perf_sample__fprintf_synth(struct perf_sample *sample,
|
||||||
struct evsel *evsel, FILE *fp)
|
struct evsel *evsel, FILE *fp)
|
||||||
{
|
{
|
||||||
@@ -1868,6 +1881,8 @@ static int perf_sample__fprintf_synth(struct perf_sample *sample,
|
|||||||
return perf_sample__fprintf_synth_psb(sample, fp);
|
return perf_sample__fprintf_synth_psb(sample, fp);
|
||||||
case PERF_SYNTH_INTEL_EVT:
|
case PERF_SYNTH_INTEL_EVT:
|
||||||
return perf_sample__fprintf_synth_evt(sample, fp);
|
return perf_sample__fprintf_synth_evt(sample, fp);
|
||||||
|
case PERF_SYNTH_INTEL_IFLAG_CHG:
|
||||||
|
return perf_sample__fprintf_synth_iflag_chg(sample, fp);
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user