[kvmarm] [PATCH 05/15] ARM: Expose PMNC bitfields for KVM use
From: Will Deacon <hidden>
Date: 2012-09-19 09:30:08
Also in:
kvm
On Wed, Sep 19, 2012 at 05:09:34AM +0100, Rusty Russell wrote:
Will Deacon [off-list ref] writes:quoted
On Sat, Sep 15, 2012 at 04:35:02PM +0100, Christoffer Dall wrote:quoted
From: Rusty Russell <redacted> 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 <redacted> Signed-off-by: Christoffer Dall <redacted> --- 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.hI 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.
Ok, let's postpone the pain for the moment.
[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 :)Yeah, right! Happy to add hooks to perf if you need them though, rather than expose the raw bit definitions. Will