perf tools: Define Intel PT iflag synthesized event

Similar to other Intel PT synth events, define a structure to hold
information about a change to the interrupt flag.

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-11-adrian.hunter@intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
Adrian Hunter 2022-01-24 10:41:46 +02:00 committed by Arnaldo Carvalho de Melo
parent edb4d8432b
commit 0d26ba8fec
1 changed files with 13 additions and 0 deletions

View File

@ -183,6 +183,7 @@ enum perf_synth_id {
PERF_SYNTH_INTEL_CBR,
PERF_SYNTH_INTEL_PSB,
PERF_SYNTH_INTEL_EVT,
PERF_SYNTH_INTEL_IFLAG_CHG,
};
/*
@ -308,6 +309,18 @@ struct perf_synth_intel_evt {
struct perf_synth_intel_evd evd[];
};
struct perf_synth_intel_iflag_chg {
u32 padding;
union {
struct {
u32 iflag : 1,
via_branch : 1;
};
u32 flags;
};
u64 branch_ip; /* If via_branch */
};
/*
* raw_data is always 4 bytes from an 8-byte boundary, so subtract 4 to get
* 8-byte alignment.