2012-05-21 01:44:18

by Namhyung Kim

[permalink] [raw]
Subject: [PATCH] perf target: Add cpu flag to sample_type if target has cpu

Add PERF_SAMPLE_CPU flag into attr->sample_type if an user
specified any of cpu target (either system-wide or cpu list).
It will show correct values when cpu sort key is given for
perf top and perf report.

Signed-off-by: Namhyung Kim <[email protected]>
---
tools/perf/builtin-top.c | 3 +++
tools/perf/util/evsel.c | 2 +-
2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/tools/perf/builtin-top.c b/tools/perf/builtin-top.c
index ebcd15883ab8..8e3cf429dd18 100644
--- a/tools/perf/builtin-top.c
+++ b/tools/perf/builtin-top.c
@@ -900,6 +900,9 @@ static void perf_top__start_counters(struct perf_top *top)
attr->read_format |= PERF_FORMAT_ID;
}

+ if (perf_target__has_cpu(&top->target))
+ attr->sample_type |= PERF_SAMPLE_CPU;
+
if (symbol_conf.use_callchain)
attr->sample_type |= PERF_SAMPLE_CALLCHAIN;

diff --git a/tools/perf/util/evsel.c b/tools/perf/util/evsel.c
index d7a2b4b9801d..d26b8fe0abd1 100644
--- a/tools/perf/util/evsel.c
+++ b/tools/perf/util/evsel.c
@@ -107,7 +107,7 @@ void perf_evsel__config(struct perf_evsel *evsel, struct perf_record_opts *opts,
if (opts->call_graph)
attr->sample_type |= PERF_SAMPLE_CALLCHAIN;

- if (opts->target.system_wide)
+ if (perf_target__has_cpu(&opts->target))
attr->sample_type |= PERF_SAMPLE_CPU;

if (opts->period)
--
1.7.10.1


2012-05-23 15:25:11

by Namhyung Kim

[permalink] [raw]
Subject: [tip:perf/core] perf target: Add cpu flag to sample_type if target has cpu

Commit-ID: e40ee742d4542b4c046ac5426654b1494d87ad73
Gitweb: http://git.kernel.org/tip/e40ee742d4542b4c046ac5426654b1494d87ad73
Author: Namhyung Kim <[email protected]>
AuthorDate: Mon, 21 May 2012 10:42:07 +0900
Committer: Arnaldo Carvalho de Melo <[email protected]>
CommitDate: Tue, 22 May 2012 12:37:12 -0300

perf target: Add cpu flag to sample_type if target has cpu

Add PERF_SAMPLE_CPU flag into attr->sample_type if an user specified any
of cpu target (either system-wide or cpu list).

It will show correct values when cpu sort key is given for perf top and
perf report.

Signed-off-by: Namhyung Kim <[email protected]>
Cc: Ingo Molnar <[email protected]>
Cc: Namhyung Kim <[email protected]>
Cc: Paul Mackerras <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Link: http://lkml.kernel.org/r/[email protected]
Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
---
tools/perf/builtin-top.c | 3 +++
tools/perf/util/evsel.c | 2 +-
2 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/tools/perf/builtin-top.c b/tools/perf/builtin-top.c
index 3e981a7..18bd226 100644
--- a/tools/perf/builtin-top.c
+++ b/tools/perf/builtin-top.c
@@ -900,6 +900,9 @@ static void perf_top__start_counters(struct perf_top *top)
attr->read_format |= PERF_FORMAT_ID;
}

+ if (perf_target__has_cpu(&top->target))
+ attr->sample_type |= PERF_SAMPLE_CPU;
+
if (symbol_conf.use_callchain)
attr->sample_type |= PERF_SAMPLE_CALLCHAIN;

diff --git a/tools/perf/util/evsel.c b/tools/perf/util/evsel.c
index f4f427c..9abd8ac 100644
--- a/tools/perf/util/evsel.c
+++ b/tools/perf/util/evsel.c
@@ -108,7 +108,7 @@ void perf_evsel__config(struct perf_evsel *evsel, struct perf_record_opts *opts,
if (opts->call_graph)
attr->sample_type |= PERF_SAMPLE_CALLCHAIN;

- if (opts->target.system_wide)
+ if (perf_target__has_cpu(&opts->target))
attr->sample_type |= PERF_SAMPLE_CPU;

if (opts->period)