summaryrefslogtreecommitdiffstats
path: root/tools/perf/util/evlist.c
diff options
context:
space:
mode:
authorAdrian Hunter <adrian.hunter@intel.com>2015-09-08 09:58:54 +0200
committerArnaldo Carvalho de Melo <acme@redhat.com>2015-09-15 15:24:30 +0200
commitb278c364b35ae940b05f6a9edf8061fc886cd09e (patch)
tree06186ca44abb1e3926f754fd905b7536a3f436e5 /tools/perf/util/evlist.c
parentperf evlist: Fix splice_list_tail() not setting evlist (diff)
downloadlinux-b278c364b35ae940b05f6a9edf8061fc886cd09e.tar.xz
linux-b278c364b35ae940b05f6a9edf8061fc886cd09e.zip
perf evlist: Fix missing thread_map__put in propagate_maps()
perf_evlist__propagate_maps() incorrectly assumes evsel->threads is NULL before reassigning it, but it won't be NULL when perf_evlist__set_maps() is used to set different (or NULL) maps. Thus thread_map__put must be used, which works even if evsel->threads is NULL. 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-7-git-send-email-adrian.hunter@intel.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to '')
-rw-r--r--tools/perf/util/evlist.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/tools/perf/util/evlist.c b/tools/perf/util/evlist.c
index 961560b2046b..79056c6ae507 100644
--- a/tools/perf/util/evlist.c
+++ b/tools/perf/util/evlist.c
@@ -1116,6 +1116,7 @@ static void perf_evlist__propagate_maps(struct perf_evlist *evlist)
evsel->cpus = cpu_map__get(evlist->cpus);
}
+ thread_map__put(evsel->threads);
evsel->threads = thread_map__get(evlist->threads);
}
}