perf tools: Remove special handling of system-wide evsel
authorNamhyung Kim <namhyung@kernel.org>
Mon, 3 Oct 2022 20:46:47 +0000 (13:46 -0700)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Thu, 6 Oct 2022 11:03:53 +0000 (08:03 -0300)
For system-wide evsels, the thread map should be dummy - i.e. it has a
single entry of -1.  But the code guarantees such a thread map, so no
need to handle it specially.

No functional change intended.

Reviewed-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Cc: Ian Rogers <irogers@google.com>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Kan Liang <kan.liang@linux.intel.com>
Cc: Leo Yan <leo.yan@linaro.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: https://lore.kernel.org/r/20221003204647.1481128-6-namhyung@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/lib/perf/evsel.c
tools/perf/builtin-script.c
tools/perf/util/evsel.c
tools/perf/util/stat.c

index 8ce5bbd096666cb9e8ba23d075be99c6719a30f6..8b51b008a81f142129069bc351c86e6aa2804ed8 100644 (file)
@@ -515,9 +515,6 @@ int perf_evsel__alloc_id(struct perf_evsel *evsel, int ncpus, int nthreads)
        if (ncpus == 0 || nthreads == 0)
                return 0;
 
-       if (evsel->system_wide)
-               nthreads = 1;
-
        evsel->sample_id = xyarray__new(ncpus, nthreads, sizeof(struct perf_sample_id));
        if (evsel->sample_id == NULL)
                return -ENOMEM;
index 886f53cfa2574b8a8e5eb2dc640cba654f48aab1..7fa467ed91dc732bd81914e3bb806c2a18f43595 100644 (file)
@@ -2243,9 +2243,6 @@ static void __process_stat(struct evsel *counter, u64 tstamp)
        struct perf_cpu cpu;
        static int header_printed;
 
-       if (counter->core.system_wide)
-               nthreads = 1;
-
        if (!header_printed) {
                printf("%3s %8s %15s %15s %15s %15s %s\n",
                       "CPU", "THREAD", "VAL", "ENA", "RUN", "TIME", "EVENT");
index a27092339b81a439c409a101b1d67eee077553ae..76605fde35078e7c32cfb87125cb8a5bb7010f87 100644 (file)
@@ -1813,7 +1813,7 @@ static struct perf_thread_map *empty_thread_map;
 static int __evsel__prepare_open(struct evsel *evsel, struct perf_cpu_map *cpus,
                struct perf_thread_map *threads)
 {
-       int nthreads;
+       int nthreads = perf_thread_map__nr(threads);
 
        if ((perf_missing_features.write_backward && evsel->core.attr.write_backward) ||
            (perf_missing_features.aux_output     && evsel->core.attr.aux_output))
@@ -1839,11 +1839,6 @@ static int __evsel__prepare_open(struct evsel *evsel, struct perf_cpu_map *cpus,
                threads = empty_thread_map;
        }
 
-       if (evsel->core.system_wide)
-               nthreads = 1;
-       else
-               nthreads = threads->nr;
-
        if (evsel->core.fd == NULL &&
            perf_evsel__alloc_fd(&evsel->core, perf_cpu_map__nr(cpus), nthreads) < 0)
                return -ENOMEM;
@@ -2061,10 +2056,7 @@ static int evsel__open_cpu(struct evsel *evsel, struct perf_cpu_map *cpus,
        if (threads == NULL)
                threads = empty_thread_map;
 
-       if (evsel->core.system_wide)
-               nthreads = 1;
-       else
-               nthreads = threads->nr;
+       nthreads = perf_thread_map__nr(threads);
 
        if (evsel->cgrp)
                pid = evsel->cgrp->fd;
index ce5e9e372fc4c912271e7121f1b28cf66d35e18d..cef943377ad7f4d2f3809b37a84c8823671d8f67 100644 (file)
@@ -420,9 +420,6 @@ static int process_counter_maps(struct perf_stat_config *config,
        int ncpus = evsel__nr_cpus(counter);
        int idx, thread;
 
-       if (counter->core.system_wide)
-               nthreads = 1;
-
        for (thread = 0; thread < nthreads; thread++) {
                for (idx = 0; idx < ncpus; idx++) {
                        if (process_counter_values(config, counter, idx, thread,