[PATCH V3 01/14] perf tools: Simplify perf_evlist__propagate_maps logic

Adrian Hunter
2015-09-08T08:01:55Z

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>
---
tools/perf/util/evlist.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/tools/perf/util/evlist.c b/tools/perf/util/evlist.c
index d51a5200c8af..95e07ea3904c 100644
--- a/tools/perf/util/evlist.c
+++ b/tools/perf/util/evlist.c
@@ -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);

--
1.9.1