perf evlist: Simplify propagate_maps() logic
authorAdrian Hunter <adrian.hunter@intel.com>
Tue, 8 Sep 2015 07:58:49 +0000 (10:58 +0300)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Tue, 15 Sep 2015 13:08:22 +0000 (10:08 -0300)
If evsel->cpus is to be reassigned then the current value must be "put",
which works even if it is NULL.  Simplify the current logic by moving
the "put" next to the assignment.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Acked-by: Jiri Olsa <jolsa@kernel.org>
Cc: Kan Liang <kan.liang@intel.com>
Link: http://lkml.kernel.org/r/1441699142-18905-2-git-send-email-adrian.hunter@intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/util/evlist.c

index d51a5200c8af77b76e98c85d55f8acee8db304f0..95e07ea3904cf9b0de8179d979d07744a06b89c9 100644 (file)
@@ -1113,11 +1113,10 @@ static int perf_evlist__propagate_maps(struct perf_evlist *evlist,
                 * We already have cpus for evsel (via PMU sysfs) so
                 * keep it, if there's no target cpu list defined.
                 */
-               if (evsel->cpus && has_user_cpus)
+               if (!evsel->cpus || has_user_cpus) {
                        cpu_map__put(evsel->cpus);
-
-               if (!evsel->cpus || has_user_cpus)
                        evsel->cpus = cpu_map__get(evlist->cpus);
+               }
 
                evsel->threads = thread_map__get(evlist->threads);