Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755738AbdDFJ4A (ORCPT ); Thu, 6 Apr 2017 05:56:00 -0400 Received: from foss.arm.com ([217.140.101.70]:40346 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752825AbdDFJz4 (ORCPT ); Thu, 6 Apr 2017 05:55:56 -0400 Date: Thu, 6 Apr 2017 10:55:33 +0100 From: Mark Rutland To: Ganapatrao Kulkarni Cc: Ganapatrao Kulkarni , "linux-kernel@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , Will Deacon , Catalin Marinas , acme@kernel.org, alexander.shishkin@linux.intel.com, peterz@infradead.org, Ingo Molnar , jnair@caviumnetworks.com Subject: Re: [PATCH 3/3] perf tool, arm64, thunderx2: Add implementation defined events for ThunderX2 Message-ID: <20170406095533.GB29947@leverpostej> References: <1491291403-29893-1-git-send-email-ganapatrao.kulkarni@cavium.com> <1491291403-29893-4-git-send-email-ganapatrao.kulkarni@cavium.com> <20170404122828.GB8551@leverpostej> <20170405100548.GA10833@leverpostej> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2298 Lines: 53 On Thu, Apr 06, 2017 at 09:50:33AM +0530, Ganapatrao Kulkarni wrote: > On Wed, Apr 5, 2017 at 3:35 PM, Mark Rutland wrote: > > On Wed, Apr 05, 2017 at 02:42:39PM +0530, Ganapatrao Kulkarni wrote: > >> On Tue, Apr 4, 2017 at 5:58 PM, Mark Rutland wrote: > >> > On Tue, Apr 04, 2017 at 01:06:43PM +0530, Ganapatrao Kulkarni wrote: > >> >> + "CPU" :"armv8_pmuv3_0" > >> > > >> > Please let's not hard-code the name like this. Surely we can get rid of this? > >> > > >> > The kernel doesn't currently name PMUs as armv8_pmuv3_*, and as that can > >> > differ across DT/ACPI and in big.LITTLE, I don't think it makes sense to > >> > try to rely one particular string regardless. > >> > >> This string/name is fixed for a platform. having name here is essential to > >> know which devices among pmu (armv8_pmuv3_0, breakpoint, software) > >> devices, these jevents to be added. > >> also this json file is specific to a arch/soc/board, it is not a > >> generic file to be common. > > > > This file describe the events of a CPU PMU, and CPUs are not specific to > > a platform in general. There are many systems using Cortex-A57, for > > example. > > > > Across big.LITTLE SoCs with Cortex-A57, there's no guarantee as to > > whether the Cortex-A57 cores would be named armv8_pmuv3_0, or > > armv8_pmuv3_1, etc. This would depend on the boot CPU, probe order of > > secondaries, etc. > > OK, we may not have complete name however, common part can be used to recognize > the PMU CORE devices from /sys/bus/event_source/devices > i.e we can have CPU id as "armv8_pmuv3". For better or worse, that's not the case on DT systems. I'd much rather that we identified the CPU PMUs without requiring particular names (e.g by looking for a "cpus" attribute). > same is extended to UNCORE as well. Could you elaborate on that? I'm not sure I follow. > mapfile.csv file will have entry for both BIG and LITTLE processors event files. > the jevents creates table of pmu_events_map for all entries present in > mapfile.csv file > while lookup, which ever pmu matches the cpuid of pmu_events_map > then corresponding table created from json file is used to add the > jevents to that PMU. Sorry, but I don't follow how that's related to the above. Thanks, Mark.