All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] perf, tools, stat: Initialize statistics correctly
@ 2014-03-25 17:31 Andi Kleen
  2014-03-25 17:31 ` [PATCH 2/2] perf, tools: Support spark lines in perf stat Andi Kleen
                   ` (3 more replies)
  0 siblings, 4 replies; 8+ messages in thread
From: Andi Kleen @ 2014-03-25 17:31 UTC (permalink / raw)
  To: acme; +Cc: mingo, linux-kernel, peterz, eranian, namhyung, jolsa, Andi Kleen

From: Andi Kleen <ak@linux.intel.com>

perf stat did initialize the stats structure used to compute
stddev etc. incorrectly. It merely zeroes it. But one member
(min) needs to be set to a non zero value. This causes min
to be not computed at all. Call init_stats() correctly.

It doesn't matter for stat currently because it doesn't use
min, but it's still better to do it correctly.

The other users of statistics are already correct.

Signed-off-by: Andi Kleen <ak@linux.intel.com>
---
 tools/perf/builtin-stat.c | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c
index 8b0e1c9..65a151e 100644
--- a/tools/perf/builtin-stat.c
+++ b/tools/perf/builtin-stat.c
@@ -174,13 +174,20 @@ static inline int perf_evsel__nr_cpus(struct perf_evsel *evsel)
 
 static void perf_evsel__reset_stat_priv(struct perf_evsel *evsel)
 {
-	memset(evsel->priv, 0, sizeof(struct perf_stat));
+	int i;
+	struct perf_stat *ps = evsel->priv;
+
+	for (i = 0; i < 3; i++)
+		init_stats(&ps->res_stats[i]);
 }
 
 static int perf_evsel__alloc_stat_priv(struct perf_evsel *evsel)
 {
 	evsel->priv = zalloc(sizeof(struct perf_stat));
-	return evsel->priv == NULL ? -ENOMEM : 0;
+	if (evsel == NULL)
+		return -ENOMEM;
+	perf_evsel__reset_stat_priv(evsel);
+	return 0;
 }
 
 static void perf_evsel__free_stat_priv(struct perf_evsel *evsel)
-- 
1.8.5.3


^ permalink raw reply related	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2014-04-14 17:09 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-03-25 17:31 [PATCH 1/2] perf, tools, stat: Initialize statistics correctly Andi Kleen
2014-03-25 17:31 ` [PATCH 2/2] perf, tools: Support spark lines in perf stat Andi Kleen
2014-04-13 18:08   ` Jiri Olsa
2014-04-14  8:50   ` Jiri Olsa
2014-04-14 17:09     ` Andi Kleen
2014-04-09  1:49 ` [PATCH 1/2] perf, tools, stat: Initialize statistics correctly Namhyung Kim
2014-04-09 13:42 ` Jiri Olsa
2014-04-14 14:54 ` [tip:perf/urgent] perf " tip-bot for Andi Kleen

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.