[PATCH v12 07/21] KVM: ARM64: PMU: Add perf event map and introduce perf event creating function
Marc Zyngier
marc.zyngier at arm.com
Tue Feb 23 09:42:42 PST 2016
Hi Shannon,
Still picking up on details...
On 22/02/16 09:37, Shannon Zhao wrote:
> From: Shannon Zhao <shannon.zhao at linaro.org>
>
> When we use tools like perf on host, perf passes the event type and the
> id of this event type category to kernel, then kernel will map them to
> hardware event number and write this number to PMU PMEVTYPER<n>_EL0
> register. When getting the event number in KVM, directly use raw event
> type to create a perf_event for it.
>
> Signed-off-by: Shannon Zhao <shannon.zhao at linaro.org>
> Reviewed-by: Marc Zyngier <marc.zyngier at arm.com>
> ---
> arch/arm64/include/asm/perf_event.h | 2 +
> arch/arm64/kvm/Makefile | 1 +
> include/kvm/arm_pmu.h | 12 ++++
> virt/kvm/arm/pmu.c | 122 ++++++++++++++++++++++++++++++++++++
> 4 files changed, 137 insertions(+)
> create mode 100644 virt/kvm/arm/pmu.c
>
> diff --git a/arch/arm64/include/asm/perf_event.h b/arch/arm64/include/asm/perf_event.h
> index 5c77ef8..867140d 100644
> --- a/arch/arm64/include/asm/perf_event.h
> +++ b/arch/arm64/include/asm/perf_event.h
> @@ -29,6 +29,8 @@
> #define ARMV8_PMU_PMCR_D (1 << 3) /* CCNT counts every 64th cpu cycle */
> #define ARMV8_PMU_PMCR_X (1 << 4) /* Export to ETM */
> #define ARMV8_PMU_PMCR_DP (1 << 5) /* Disable CCNT if non-invasive debug*/
> +/* Determines which bit of PMCCNTR_EL0 generates an overflow */
> +#define ARMV8_PMU_PMCR_LC (1 << 6)
nit: this #define is only being used in patch #14. Consider moving it
there...
Thanks,
M.
--
Jazz is not dead. It just smells funny...
More information about the linux-arm-kernel
mailing list