From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753635AbcCAMc4 (ORCPT ); Tue, 1 Mar 2016 07:32:56 -0500 Received: from mx1.redhat.com ([209.132.183.28]:42224 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753598AbcCAMcy (ORCPT ); Tue, 1 Mar 2016 07:32:54 -0500 Date: Tue, 1 Mar 2016 13:32:50 +0100 From: Jiri Olsa To: Andi Kleen Cc: acme@kernel.org, jolsa@kernel.org, linux-kernel@vger.kernel.org, Andi Kleen Subject: Re: [PATCH 7/7] perf, tools, stat: Check for frontend stalled for metrics Message-ID: <20160301123250.GH622@krava.redhat.com> References: <1456785386-19481-1-git-send-email-andi@firstfloor.org> <1456785386-19481-8-git-send-email-andi@firstfloor.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1456785386-19481-8-git-send-email-andi@firstfloor.org> User-Agent: Mutt/1.5.24 (2015-08-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Feb 29, 2016 at 02:36:26PM -0800, Andi Kleen wrote: > From: Andi Kleen > > Add an extra check for frontend stalled in the metrics. > This avoids an extra column for the --metric-only case > when the CPU does not support frontend stalled. ook.. that sorts out the stalled column then > > Signed-off-by: Andi Kleen > --- > tools/perf/util/stat-shadow.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/tools/perf/util/stat-shadow.c b/tools/perf/util/stat-shadow.c > index 5e2d2e3..7f87ed7 100644 > --- a/tools/perf/util/stat-shadow.c > +++ b/tools/perf/util/stat-shadow.c > @@ -2,6 +2,7 @@ > #include "evsel.h" > #include "stat.h" > #include "color.h" > +#include "pmu.h" > > enum { > CTX_BIT_USER = 1 << 0, > @@ -35,6 +36,7 @@ static struct stats runtime_dtlb_cache_stats[NUM_CTX][MAX_NR_CPUS]; > static struct stats runtime_cycles_in_tx_stats[NUM_CTX][MAX_NR_CPUS]; > static struct stats runtime_transaction_stats[NUM_CTX][MAX_NR_CPUS]; > static struct stats runtime_elision_stats[NUM_CTX][MAX_NR_CPUS]; > +static bool have_frontend_stalled; > > struct stats walltime_nsecs_stats; > > @@ -75,6 +77,7 @@ void perf_stat__reset_shadow_stats(void) > sizeof(runtime_transaction_stats)); > memset(runtime_elision_stats, 0, sizeof(runtime_elision_stats)); > memset(&walltime_nsecs_stats, 0, sizeof(walltime_nsecs_stats)); > + have_frontend_stalled = pmu_have_event("cpu", "stalled-cycles-frontend"); not the best place IMO, you need this to be called just once, maybe adding perf_stat__init_shadow_stats would be better thanks, jirka