KVM: arm64: Fix the name of sys_reg_desc related to PMU
authorXiang Chen <chenxiang66@hisilicon.com>
Fri, 14 Jul 2023 03:38:40 +0000 (11:38 +0800)
committerOliver Upton <oliver.upton@linux.dev>
Fri, 14 Jul 2023 23:34:05 +0000 (23:34 +0000)
commit9d2a55b403eea26cab7c831d8e1c00ef1e6a6850
tree9e5f3b1238023e440201deeb68a0a8ffada5f9ad
parent6d4f9236cd678e0bf0c09fd0e1fa20435bb2e5a2
KVM: arm64: Fix the name of sys_reg_desc related to PMU

For those PMU system registers defined in sys_reg_descs[], use macro
PMU_SYS_REG() / PMU_PMEVCNTR_EL0 / PMU_PMEVTYPER_EL0 to define them, and
later two macros call macro PMU_SYS_REG() actually.
Currently the input parameter of PMU_SYS_REG() is another macro which is
calculation formula of the value of system registers, so for example, if
we want to "SYS_PMINTENSET_EL1" as the name of sys register, actually
the name we get is as following:
(((3) << 19) | ((0) << 16) | ((9) << 12) | ((14) << 8) | ((1) << 5))
The name of system register is used in some tracepoints such as
trace_kvm_sys_access(), if not set correctly, we need to analyze the
inaccurate name to get the exact name (which also is inconsistent with
other system registers), and also the inaccurate name occupies more space.

To fix the issue, use the name as a input parameter of PMU_SYS_REG like
MTE_REG or EL2_REG.

Signed-off-by: Xiang Chen <chenxiang66@hisilicon.com>
Acked-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/1689305920-170523-1-git-send-email-chenxiang66@hisilicon.com
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
arch/arm64/kvm/sys_regs.c