Commit-ID:  7320b1b3d9e6af30adcbead64568be3c40b50e59
Gitweb:     http://git.kernel.org/tip/7320b1b3d9e6af30adcbead64568be3c40b50e59
Author:     Jiri Olsa <[email protected]>
AuthorDate: Thu, 3 Dec 2015 09:34:15 +0100
Committer:  Arnaldo Carvalho de Melo <[email protected]>
CommitDate: Mon, 7 Dec 2015 18:12:55 -0300

perf test: Fix cpus and thread maps reference in error path

In error path to try user space event, both cpus and threads map now
owned by evlist and freed by perf_evlist__set_maps call.  Getting
reference to keep them alive.

Signed-off-by: Jiri Olsa <[email protected]>
Acked-by: Namhyung Kim <[email protected]>
Cc: Adrian Hunter <[email protected]>
Cc: David Ahern <[email protected]>
Cc: Masami Hiramatsu <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: Wang Nan <[email protected]>
Link: http://lkml.kernel.org/r/[email protected]
Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
---
 tools/perf/tests/code-reading.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/tools/perf/tests/code-reading.c b/tools/perf/tests/code-reading.c
index 26182ff..313a48c 100644
--- a/tools/perf/tests/code-reading.c
+++ b/tools/perf/tests/code-reading.c
@@ -547,6 +547,13 @@ static int do_test_code_reading(bool try_kcore)
                if (ret < 0) {
                        if (!excl_kernel) {
                                excl_kernel = true;
+                               /*
+                                * Both cpus and threads are now owned by evlist
+                                * and will be freed by following 
perf_evlist__set_maps
+                                * call. Getting refference to keep them alive.
+                                */
+                               cpu_map__get(cpus);
+                               thread_map__get(threads);
                                perf_evlist__set_maps(evlist, NULL, NULL);
                                perf_evlist__delete(evlist);
                                evlist = NULL;
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to