mirror of https://gitee.com/openkylin/linux.git
powerpc/perf: Add Power10 BHRB filter support for PERF_SAMPLE_BRANCH_IND_CALL/COND
PowerISA v3.1 introduce filtering support for PERF_SAMPLE_BRANCH_IND_CALL/COND. The patch adds BHRB filter support for "ind_call" and "cond" in power10_bhrb_filter_map(). Signed-off-by: Athira Rajeev <atrajeev@linux.vnet.ibm.com> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://lore.kernel.org/r/1594996707-3727-11-git-send-email-atrajeev@linux.vnet.ibm.com
This commit is contained in:
parent
bfe3b1945d
commit
80350a4bac
|
@ -83,6 +83,8 @@
|
|||
|
||||
/* MMCRA IFM bits - POWER10 */
|
||||
#define POWER10_MMCRA_IFM1 0x0000000040000000UL
|
||||
#define POWER10_MMCRA_IFM2 0x0000000080000000UL
|
||||
#define POWER10_MMCRA_IFM3 0x00000000C0000000UL
|
||||
#define POWER10_MMCRA_BHRB_MASK 0x00000000C0000000UL
|
||||
|
||||
/* Table of alternatives, sorted by column 0 */
|
||||
|
@ -233,8 +235,15 @@ static u64 power10_bhrb_filter_map(u64 branch_sample_type)
|
|||
if (branch_sample_type & PERF_SAMPLE_BRANCH_ANY_RETURN)
|
||||
return -1;
|
||||
|
||||
if (branch_sample_type & PERF_SAMPLE_BRANCH_IND_CALL)
|
||||
return -1;
|
||||
if (branch_sample_type & PERF_SAMPLE_BRANCH_IND_CALL) {
|
||||
pmu_bhrb_filter |= POWER10_MMCRA_IFM2;
|
||||
return pmu_bhrb_filter;
|
||||
}
|
||||
|
||||
if (branch_sample_type & PERF_SAMPLE_BRANCH_COND) {
|
||||
pmu_bhrb_filter |= POWER10_MMCRA_IFM3;
|
||||
return pmu_bhrb_filter;
|
||||
}
|
||||
|
||||
if (branch_sample_type & PERF_SAMPLE_BRANCH_CALL)
|
||||
return -1;
|
||||
|
|
Loading…
Reference in New Issue