Re: [kvmarm] [PATCH 05/15] ARM: Expose PMNC bitfields for KVM use

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Will Deacon <will.deacon@xxxxxxx> writes:
> On Sat, Sep 15, 2012 at 04:35:02PM +0100, Christoffer Dall wrote:
>> From: Rusty Russell <rusty.russell@xxxxxxxxxx>
>> 
>> We want some of these for use in KVM, so pull them out of
>> arch/arm/kernel/perf_event_v7.c into their own asm/perf_bits.h.
>> 
>> Signed-off-by: Rusty Russell <rusty.russell@xxxxxxxxxx>
>> Signed-off-by: Christoffer Dall <c.dall@xxxxxxxxxxxxxxxxxxxxxx>
>> ---
>>  arch/arm/include/asm/perf_bits.h |   56 ++++++++++++++++++++++++++++++++++++++
>>  arch/arm/kernel/perf_event_v7.c  |   51 +----------------------------------
>>  2 files changed, 57 insertions(+), 50 deletions(-)
>>  create mode 100644 arch/arm/include/asm/perf_bits.h
>
> I don't like this I'm afraid. These bit definitions, although useful for
> kvm, are only applicable to ARMv7 PMUs. Perf does a reasonable job of
> separating the low-level CPU-specific code and adding the v7 definitions
> into their own global header feels like a step backwards. I also want to
> move a load of this into drivers/ at some point and this won't help with
> that effort.
>
> Is KVM just using this for world switch? If so, why does it care about the
> bit definitions (and what do you do for things like debug regs)? Is there
> anything I could add to perf that you could call instead?

No, we need these definitions if we ever want to actually implement
PMU for the guest.[1]

But we don't do this yet, so you can defer this patch until then if you
want.

Cheers,
Rusty.
[1] Which we should do, since you NAKed the patch which would allow the
    guest to detect that we don't have a PMU, insisting that "all A15s have
    a PMU", despite the fact that we don't.  I assume this means you're
    busy implementing it right now :)
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux