From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S964835AbbFCPKw (ORCPT ); Wed, 3 Jun 2015 11:10:52 -0400 Received: from mail.kernel.org ([198.145.29.136]:33972 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753406AbbFCPKo (ORCPT ); Wed, 3 Jun 2015 11:10:44 -0400 Date: Wed, 3 Jun 2015 12:10:38 -0300 From: Arnaldo Carvalho de Melo To: Jiri Olsa Cc: lkml , Peter Zijlstra , Paul Mackerras , David Ahern , Namhyung Kim , Ingo Molnar , Andi Kleen , Stephane Eranian Subject: Re: [PATCH 4/9] perf stat: Remove transaction_run from shadow update/print code Message-ID: <20150603151038.GX624@kernel.org> References: <1433341559-31848-1-git-send-email-jolsa@kernel.org> <1433341559-31848-5-git-send-email-jolsa@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1433341559-31848-5-git-send-email-jolsa@kernel.org> X-Url: http://acmel.wordpress.com User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Em Wed, Jun 03, 2015 at 04:25:54PM +0200, Jiri Olsa escreveu: > It's no longer needed, because we use nameid to recognize > transaction events. > > Keeping it only in stat code to initialize transaction events. Lemme see if I understand this correctly, this update_shadow_stats() is called only for transaction runs? It doesn't seem so, so now we will update those stats all the time? - Arnaldo > Link: http://lkml.kernel.org/n/tip-eo93tek7cjy8zqdvfd6f5a4x@git.kernel.org > Signed-off-by: Jiri Olsa > --- > tools/perf/builtin-stat.c | 14 +++++++------- > 1 file changed, 7 insertions(+), 7 deletions(-) > > diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c > index 0c0071cf4fba..b3e08ce2c564 100644 > --- a/tools/perf/builtin-stat.c > +++ b/tools/perf/builtin-stat.c > @@ -355,11 +355,11 @@ static void update_shadow_stats(struct perf_evsel *counter, u64 *count, > update_stats(&runtime_nsecs_stats[cpu], count[0]); > else if (perf_evsel__match(counter, HARDWARE, HW_CPU_CYCLES)) > update_stats(&runtime_cycles_stats[ctx][cpu], count[0]); > - else if (transaction_run && perf_stat_evsel__is(counter, CYCLES_IN_TX)) > + else if (perf_stat_evsel__is(counter, CYCLES_IN_TX)) > update_stats(&runtime_transaction_stats[ctx][cpu], count[0]); > - else if (transaction_run && perf_stat_evsel__is(counter, TRANSACTION_START)) > + else if (perf_stat_evsel__is(counter, TRANSACTION_START)) > update_stats(&runtime_transaction_stats[ctx][cpu], count[0]); > - else if (transaction_run && perf_stat_evsel__is(counter, ELISION_START)) > + else if (perf_stat_evsel__is(counter, ELISION_START)) > update_stats(&runtime_elision_stats[ctx][cpu], count[0]); > else if (perf_evsel__match(counter, HARDWARE, HW_STALLED_CYCLES_FRONTEND)) > update_stats(&runtime_stalled_cycles_front_stats[ctx][cpu], count[0]); > @@ -1170,13 +1170,13 @@ static void abs_printout(int id, int nr, struct perf_evsel *evsel, double avg) > } else { > fprintf(output, " "); > } > - } else if (transaction_run && perf_stat_evsel__is(evsel, CYCLES_IN_TX)) { > + } else if (perf_stat_evsel__is(evsel, CYCLES_IN_TX)) { > total = avg_stats(&runtime_cycles_stats[ctx][cpu]); > if (total) > fprintf(output, > " # %5.2f%% transactional cycles ", > 100.0 * (avg / total)); > - } else if (transaction_run && perf_stat_evsel__is(evsel, CYCLES_IN_TX_CP)) { > + } else if (perf_stat_evsel__is(evsel, CYCLES_IN_TX_CP)) { > total = avg_stats(&runtime_cycles_stats[ctx][cpu]); > total2 = avg_stats(&runtime_cycles_in_tx_stats[ctx][cpu]); > if (total2 < avg) > @@ -1185,7 +1185,7 @@ static void abs_printout(int id, int nr, struct perf_evsel *evsel, double avg) > fprintf(output, > " # %5.2f%% aborted cycles ", > 100.0 * ((total2-avg) / total)); > - } else if (transaction_run && perf_stat_evsel__is(evsel, TRANSACTION_START) && > + } else if (perf_stat_evsel__is(evsel, TRANSACTION_START) && > avg > 0 && > runtime_cycles_in_tx_stats[ctx][cpu].n != 0) { > total = avg_stats(&runtime_cycles_in_tx_stats[ctx][cpu]); > @@ -1194,7 +1194,7 @@ static void abs_printout(int id, int nr, struct perf_evsel *evsel, double avg) > ratio = total / avg; > > fprintf(output, " # %8.0f cycles / transaction ", ratio); > - } else if (transaction_run && perf_stat_evsel__is(evsel, ELISION_START) && > + } else if (perf_stat_evsel__is(evsel, ELISION_START) && > avg > 0 && > runtime_cycles_in_tx_stats[ctx][cpu].n != 0) { > total = avg_stats(&runtime_cycles_in_tx_stats[ctx][cpu]); > -- > 1.9.3