From mboxrd@z Thu Jan 1 00:00:00 1970 From: will.deacon@arm.com (Will Deacon) Date: Wed, 19 Sep 2012 10:30:08 +0100 Subject: [kvmarm] [PATCH 05/15] ARM: Expose PMNC bitfields for KVM use In-Reply-To: <87fw6epsap.fsf@rustcorp.com.au> References: <20120915153359.21241.86002.stgit@ubuntu> <20120915153502.21241.13218.stgit@ubuntu> <20120918130821.GN32204@mudshark.cambridge.arm.com> <87fw6epsap.fsf@rustcorp.com.au> Message-ID: <20120919093008.GB22271@mudshark.cambridge.arm.com> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org On Wed, Sep 19, 2012 at 05:09:34AM +0100, Rusty Russell wrote: > Will Deacon writes: > > On Sat, Sep 15, 2012 at 04:35:02PM +0100, Christoffer Dall wrote: > >> From: Rusty Russell > >> > >> 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 > >> Signed-off-by: Christoffer Dall > >> --- > >> 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. 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