From: Namhyung Kim Date: Mon, 7 May 2012 05:09:04 +0000 (+0900) Subject: perf stat: Use perf_evlist__create_maps X-Git-Tag: v3.5-rc1~120^3~40^2~8 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=77a6f014e9ae330c747c66bebfddf29abf9b89e9;p=platform%2Fkernel%2Flinux-3.10.git perf stat: Use perf_evlist__create_maps Use same function with perf record and top to share the code checks combinations of different switches. Signed-off-by: Namhyung Kim Reviewed-by: David Ahern Cc: David Ahern Cc: Ingo Molnar Cc: Namhyung Kim Cc: Paul Mackerras Cc: Peter Zijlstra Link: http://lkml.kernel.org/r/1336367344-28071-8-git-send-email-namhyung.kim@lge.com Signed-off-by: Arnaldo Carvalho de Melo --- diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c index d9ff246..e720ba7 100644 --- a/tools/perf/builtin-stat.c +++ b/tools/perf/builtin-stat.c @@ -175,7 +175,9 @@ static struct perf_event_attr very_very_detailed_attrs[] = { static struct perf_evlist *evsel_list; -static struct perf_target target; +static struct perf_target target = { + .uid = UINT_MAX, +}; static int run_idx = 0; static int run_count = 1; @@ -1205,20 +1207,12 @@ int cmd_stat(int argc, const char **argv, const char *prefix __used) perf_target__validate(&target); - evsel_list->threads = thread_map__new_str(target.pid, - target.tid, UINT_MAX); - if (evsel_list->threads == NULL) { - pr_err("Problems finding threads of monitor\n"); - usage_with_options(stat_usage, options); - } - - if (target.system_wide) - evsel_list->cpus = cpu_map__new(target.cpu_list); - else - evsel_list->cpus = cpu_map__dummy_new(); + if (perf_evlist__create_maps(evsel_list, &target) < 0) { + if (!perf_target__no_task(&target)) + pr_err("Problems finding threads of monitor\n"); + if (!perf_target__no_cpu(&target)) + perror("failed to parse CPUs map"); - if (evsel_list->cpus == NULL) { - perror("failed to parse CPUs map"); usage_with_options(stat_usage, options); return -1; }