forked from Minki/linux
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 <jolsa@kernel.org> Acked-by: Namhyung Kim <namhyung@kernel.org> Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: David Ahern <dsahern@gmail.com> Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Wang Nan <wangnan0@huawei.com> Link: http://lkml.kernel.org/r/1449131658-1841-5-git-send-email-jolsa@kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
parent
0fd4008ed7
commit
7320b1b3d9
@ -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;
|
||||
|
Loading…
Reference in New Issue
Block a user