[PATCH v3 6/9] kvm: arm/arm64: Add host pmu to support VM introspection
Punit Agrawal
punit.agrawal at arm.com
Wed Jan 18 05:06:50 PST 2017
Hi Marc,
Marc Zyngier <marc.zyngier at arm.com> writes:
> +Mark
>
> On 10/01/17 11:38, Punit Agrawal wrote:
>> Both AArch32 and AArch64 mode of the ARMv8 architecture support trapping
>> certain VM operations, e.g, TLB and cache maintenance
>> operations. Selective trapping of these operations for specific VMs can
>> be used to track the frequency with which these occur during execution.
>>
>> Add a software PMU on the host that can support tracking VM
>> operations (in the form of PMU events). Supporting new events requires
>> providing callbacks to configure the VM to enable/disable the trapping
>> and read a count of the frequency.
>>
>> The host PMU events can be controlled by tools like perf that use
>> standard kernel perf interfaces.
>>
>> Signed-off-by: Punit Agrawal <punit.agrawal at arm.com>
>> Cc: Christoffer Dall <christoffer.dall at linaro.org>
>> Cc: Marc Zyngier <marc.zyngier at arm.com>
>> Cc: Will Deacon <will.deacon at arm.com>
>> ---
>> arch/arm/include/asm/kvm_host.h | 8 ++
>> arch/arm/kvm/arm.c | 2 +
>> arch/arm64/include/asm/kvm_host.h | 8 ++
>> virt/kvm/arm/host_pmu.c | 272 ++++++++++++++++++++++++++++++++++++++
>> 4 files changed, 290 insertions(+)
>> create mode 100644 virt/kvm/arm/host_pmu.c
>>
[...]
>>
>
> This patch really makes me think that there is nothing arm-specific in
> here at all. Why can't it be a generic feature through which
> architectures can expose events in a generic way (or as close as
> possible to being generic)?
I wasn't sure if other architectures are interested in the functionality
- that's the only reason. Having said that, it can be turned off in the
config so there shouldn't be any complaints.
I'll move this to virt/kvm in the next incarnation.
Thanks for taking a look.
>
> Thanks,
>
> M.
More information about the linux-arm-kernel
mailing list