arm64: Restrict undef hook for cpufeature registers
This commit modifies the mask of the mrs_hook declared in arch/arm64/kernel/cpufeatures.c which emulates only feature register access. This is necessary because this hook's mask was too large and thus masking any mrs instruction, even if not related to the emulated registers which made the pmu emulation inefficient. Signed-off-by: Raphael Gault <raphael.gault@arm.com> Signed-off-by: Rob Herring <robh@kernel.org> Acked-by: Catalin Marinas <catalin.marinas@arm.com> Link: https://lore.kernel.org/r/20210517180256.2881891-1-robh@kernel.org Signed-off-by: Will Deacon <will@kernel.org>
This commit is contained in:
parent
873c3e8977
commit
cf292e93f4
|
|
@ -3018,8 +3018,8 @@ static int emulate_mrs(struct pt_regs *regs, u32 insn)
|
|||
}
|
||||
|
||||
static struct undef_hook mrs_hook = {
|
||||
.instr_mask = 0xfff00000,
|
||||
.instr_val = 0xd5300000,
|
||||
.instr_mask = 0xffff0000,
|
||||
.instr_val = 0xd5380000,
|
||||
.pstate_mask = PSR_AA32_MODE_MASK,
|
||||
.pstate_val = PSR_MODE_EL0t,
|
||||
.fn = emulate_mrs,
|
||||
|
|
|
|||
Loading…
Reference in New Issue