linux/tools/perf/tests
Namhyung Kim 846580c235 perf test: Fix cpu and thread map leaks in perf_time_to_tsc test
It should release the maps at the end.

  $ perf test -v 71
  71: Convert perf time to TSC                   :
  --- start ---
  test child forked, pid 178744
  mmap size 528384B
  1st event perf time 59207256505278 tsc 13187166645142
  rdtsc          time 59207256542151 tsc 13187166723020
  2nd event perf time 59207256543749 tsc 13187166726393

  =================================================================
  ==178744==ERROR: LeakSanitizer: detected memory leaks

  Direct leak of 40 byte(s) in 1 object(s) allocated from:
    #0 0x7faf601f9e8f in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:145
    #1 0x55b620cfc00a in cpu_map__trim_new /home/namhyung/project/linux/tools/lib/perf/cpumap.c:79
    #2 0x55b620cfca2f in perf_cpu_map__read /home/namhyung/project/linux/tools/lib/perf/cpumap.c:149
    #3 0x55b620cfd1ef in cpu_map__read_all_cpu_map /home/namhyung/project/linux/tools/lib/perf/cpumap.c:166
    #4 0x55b620cfd1ef in perf_cpu_map__new /home/namhyung/project/linux/tools/lib/perf/cpumap.c:181
    #5 0x55b6209ef1b2 in test__perf_time_to_tsc tests/perf-time-to-tsc.c:73
    #6 0x55b6209828fb in run_test tests/builtin-test.c:428
    #7 0x55b6209828fb in test_and_print tests/builtin-test.c:458
    #8 0x55b620984a53 in __cmd_test tests/builtin-test.c:679
    #9 0x55b620984a53 in cmd_test tests/builtin-test.c:825
    #10 0x55b6209f0cd4 in run_builtin /home/namhyung/project/linux/tools/perf/perf.c:313
    #11 0x55b62087aa88 in handle_internal_command /home/namhyung/project/linux/tools/perf/perf.c:365
    #12 0x55b62087aa88 in run_argv /home/namhyung/project/linux/tools/perf/perf.c:409
    #13 0x55b62087aa88 in main /home/namhyung/project/linux/tools/perf/perf.c:539
    #14 0x7faf5fd2fd09 in __libc_start_main ../csu/libc-start.c:308

  SUMMARY: AddressSanitizer: 72 byte(s) leaked in 2 allocation(s).
  test child finished with 1
  ---- end ----
  Convert perf time to TSC: FAILED!

Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Acked-by: Jiri Olsa <jolsa@redhat.com>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Ian Rogers <irogers@google.com>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Leo Yan <leo.yan@linaro.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Stephane Eranian <eranian@google.com>
Link: https://lore.kernel.org/r/20210301140409.184570-12-namhyung@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2021-03-06 16:54:30 -03:00
..
attr perf test: Leader sampling shouldn't clear sample period 2020-09-14 19:35:22 -03:00
shell perf daemon: Fix running test for non root user 2021-03-06 16:54:27 -03:00
.gitignore .gitignore: add SPDX License Identifier 2020-03-25 11:50:48 +01:00
api-io.c tools api: Add a lightweight buffered reading api 2020-04-30 10:48:28 -03:00
attr.c perf test: Fix a memory leak in attr test 2021-03-06 16:54:27 -03:00
attr.py perf script python: Add Python3 support to tests/attr.py 2019-02-05 10:31:08 -03:00
backward-ring-buffer.c perf evlist: Use the right prefix for 'struct evlist' event attribute config methods 2020-11-30 15:15:27 -03:00
bitmap.c perf env: Remove needless cpumap.h header 2019-09-20 09:19:21 -03:00
bp_account.c perf tests bp_account: Make global variable static 2020-03-02 11:15:07 -03:00
bp_signal_overflow.c perf debug: Remove needless include directives from debug.h 2019-08-31 19:10:19 -03:00
bp_signal.c perf test: Fix the "signal" test inline assembly 2020-09-14 18:26:45 -03:00
bpf-script-example.c perf tests: Add missing SPDX headers 2019-06-17 15:57:19 -03:00
bpf-script-test-kbuild.c perf tests: Add missing SPDX headers 2019-06-17 15:57:19 -03:00
bpf-script-test-prologue.c perf tests: Add missing SPDX headers 2019-06-17 15:57:19 -03:00
bpf-script-test-relocation.c perf tests: Add missing SPDX headers 2019-06-17 15:57:19 -03:00
bpf.c perf evlist: Use the right prefix for 'struct evlist' event attribute config methods 2020-11-30 15:15:27 -03:00
Build perf tools: Add OCaml demangling 2021-02-17 15:15:06 -03:00
builtin-test.c perf tools: Add OCaml demangling 2021-02-17 15:15:06 -03:00
clang.c perf tools: Remove util.h from where it is not needed 2019-09-20 09:19:20 -03:00
code-reading.c perf test: Fix cpu and thread map leaks in code_reading test 2021-03-06 16:54:28 -03:00
cpumap.c perf test: Fix cpu map leaks in cpu_map_print test 2021-03-06 16:54:29 -03:00
demangle-java-test.c perf tests: Add test for the java demangler 2020-05-28 10:03:28 -03:00
demangle-ocaml-test.c perf tools: Add OCaml demangling 2021-02-17 15:15:06 -03:00
dso-data.c perf tools: Remove util.h from where it is not needed 2019-09-20 09:19:20 -03:00
dwarf-unwind.c perf tools: Remove broken __no_tail_call attribute 2020-11-03 08:32:15 -03:00
event_update.c perf evlist: Use the right prefix for alternative 'struct evlist' constructors 2020-11-30 15:04:05 -03:00
event-times.c perf evlist: Use the right prefix for 'struct evlist' create maps methods 2020-11-30 14:56:52 -03:00
evsel-roundtrip-name.c perf evsel: Rename perf_evsel__[hs]w_cache* to evsel__[hs]w_cache* 2020-05-28 10:03:24 -03:00
evsel-tp-sched.c perf evsel: Convert last 'struct evsel' methods to the right evsel__ prefix 2020-11-30 09:08:24 -03:00
expand-cgroup.c perf evlist: Use the right prefix for alternative 'struct evlist' constructors 2020-11-30 15:04:05 -03:00
expr.c perf metric: Add 'struct expr_id_data' to keep expr value 2020-07-17 09:09:48 -03:00
fdarray.c libperf: Add flags to fdarray fds objects 2020-07-21 09:52:51 -03:00
genelf.c perf jit: Move test functionality in to a test 2019-11-29 12:20:45 -03:00
hists_common.c perf tools: Move event synthesizing routines to separate header 2019-09-20 09:19:22 -03:00
hists_common.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
hists_cumulate.c perf evsel: Rename perf_evsel__resort*() to evsel__resort*() 2020-05-28 10:03:24 -03:00
hists_filter.c perf evsel: Rename perf_evsel__resort*() to evsel__resort*() 2020-05-28 10:03:24 -03:00
hists_link.c libperf: Add perf_evlist__first()/last() functions 2019-09-25 09:51:48 -03:00
hists_output.c perf evsel: Rename perf_evsel__resort*() to evsel__resort*() 2020-05-28 10:03:24 -03:00
is_printable_array.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
keep-tracking.c perf test: Fix cpu and thread map leaks in keep_tracking test 2021-03-06 16:54:28 -03:00
kmod-path.c perf debug: Remove needless include directives from debug.h 2019-08-31 19:10:19 -03:00
llvm.c perf tests: Skip the llvm and bpf tests if HAVE_LIBBPF_SUPPORT isn't defined 2020-11-04 09:42:41 -03:00
llvm.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
make perf tools: Add build test with GTK+ 2020-09-09 11:12:10 -03:00
maps.c perf tests: Rename tests/map_groups.c to tests/maps.c 2019-11-26 11:07:46 -03:00
mem2node.c perf env: Remove needless cpumap.h header 2019-09-20 09:19:21 -03:00
mem.c perf symbols: Move mem_info and branch_info out of symbol.h 2019-08-31 22:27:48 -03:00
mmap-basic.c perf test: Fix cpu and thread map leaks in basic mmap test 2021-03-06 16:54:27 -03:00
mmap-thread-lookup.c libperf: Move 'page_size' global variable to libperf 2019-09-25 09:51:48 -03:00
openat-syscall-all-cpus.c perf env: Remove unneeded internal/cpumap inclusions 2021-02-12 17:35:48 -03:00
openat-syscall-tp-fields.c perf evlist: Use the right prefix for alternative 'struct evlist' constructors 2020-11-30 15:04:05 -03:00
openat-syscall.c perf evsel: Rename perf_evsel__new*() to evsel__new*() 2020-05-28 10:03:24 -03:00
parse-events.c perf evlist: Use the right prefix for 'struct evlist' event attribute config methods 2020-11-30 15:15:27 -03:00
parse-metric.c perf test: Add parse-metric memory bandwidth testcase 2021-02-03 13:10:27 -03:00
parse-no-sample-id-all.c perf evlist: Use the right prefix for 'struct evlist' sample parsing methods 2020-11-30 09:43:07 -03:00
pe-file-parsing.c perf tools: Pass build_id object to filename__read_build_id() 2020-10-14 08:45:16 -03:00
pe-file.c perf tests: Add test for PE binary format support 2020-09-04 14:38:15 -03:00
pe-file.exe perf tests: Add test for PE binary format support 2020-09-04 14:38:15 -03:00
pe-file.exe.debug perf tests: Add test for PE binary format support 2020-09-04 14:38:15 -03:00
perf-hooks.c perf tests: Avoid raising SEGV using an obvious NULL dereference 2019-09-27 09:26:14 -03:00
perf-record.c perf evlist: Use the right prefix for 'struct evlist' event attribute config methods 2020-11-30 15:15:27 -03:00
perf-targz-src-pkg License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
perf-time-to-tsc.c perf test: Fix cpu and thread map leaks in perf_time_to_tsc test 2021-03-06 16:54:30 -03:00
pfm.c perf tools: Add optional support for libpfm4 2020-05-29 16:51:38 -03:00
pmu-events.c perf test: Fix metric parsing test 2020-12-15 11:52:41 -03:00
pmu.c perf test: Free formats for perf pmu parse test 2020-09-15 09:22:42 -03:00
python-use.c perf tests: Show python test script in verbose mode 2020-10-13 16:22:03 -03:00
sample-parsing.c perf test: Fix unaligned access in sample parsing test 2021-02-18 16:08:29 -03:00
sdt.c perf tools: Pass build_id object to build_id__sprintf() 2020-10-14 08:46:22 -03:00
stat.c perf tools: Move event synthesizing routines to separate header 2019-09-20 09:19:22 -03:00
sw-clock.c perf test: Fix cpu and thread map leaks in sw_clock_freq test 2021-03-06 16:54:28 -03:00
switch-tracking.c perf test: Fix cpu and thread map leaks in switch_tracking test 2021-03-06 16:54:29 -03:00
task-exit.c perf test: Fix cpu and thread map leaks in task_exit test 2021-03-06 16:54:28 -03:00
tests.h perf tools: Add OCaml demangling 2021-02-17 15:15:06 -03:00
thread-map.c perf test: Fix a memory leak in thread_map_remove test 2021-03-06 16:54:29 -03:00
thread-maps-share.c perf tests: Rename thread-mg-share to thread-maps-share 2019-11-26 11:07:46 -03:00
time-utils-test.c perf evlist: Rename struct perf_evlist to struct evlist 2019-07-29 18:34:42 -03:00
topology.c perf stat aggregation: Add separate thread member 2020-12-24 10:05:28 -03:00
unit_number__scnprintf.c perf debug: Remove needless include directives from debug.h 2019-08-31 19:10:19 -03:00
vmlinux-kallsyms.c perf maps: Merge 'struct maps' with 'struct map_groups' 2019-11-26 11:07:46 -03:00
wp.c perf test: Implement skip_reason callback for watchpoint tests 2020-11-04 09:42:40 -03:00