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/[email protected] > Signed-off-by: Jiri Olsa <[email protected]> > --- > 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 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

