[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20190316080556.3075-1-changbin.du@gmail.com>
Date: Sat, 16 Mar 2019 16:05:40 +0800
From: Changbin Du <changbin.du@...il.com>
To: Arnaldo Carvalho de Melo <acme@...nel.org>,
Jiri Olsa <jolsa@...nel.org>
Cc: namhyung@...nel.org, Ingo Molnar <mingo@...hat.com>,
Peter Zijlstra <peterz@...radead.org>,
Alexei Starovoitov <ast@...nel.org>, rostedt@...dmis.org,
Daniel Borkmann <daniel@...earbox.net>, bpf@...r.kernel.org,
linux-kernel@...r.kernel.org, netdev@...r.kernel.org,
Changbin Du <changbin.du@...il.com>
Subject: [PATCH 00/16] fix some perf issues detected by ASan
AddressSanitizer (or ASan) and UndefinedBehaviorSanitizer (or UBSan) are
very useful tools to detect program bugs. This series fixed some issues
disclosed by ASan.
AddressSanitizer (or ASan) is a GCC feature that detects memory corruption bugs
such as buffer overflows or memory leaks.
$ cd tools/perf
$ make DEBUG=1 EXTRA_CFLAGS='-fno-omit-frame-pointer -fsanitize=address'
$ ASAN_OPTIONS=log_path=asan.log ./perf record -a
ASan outputs all detected issues into log file 'asan.log.<pid>'.
Note that this only fixes parts of the detected issues. There are many remaining
to be fixed[1].
[1] http://104.238.181.70:8080/asan.log.32555.txt
Changbin Du (16):
perf: add doc for how to build perf with Asan and UBSan
perf: list: fix memory leak in function is_event_supported
perf: fix errors under optimization level '-Og'
perf: fix an error in config template
perf: fix a memory leak in collect_config
perf: fix memory leak in print_sdt_events()
perf: top: fix heap-use-after-free issue
perf: top: fix error handing in cmd_top()
perf: missed a map__put() in error case
perf: remove map from names tree in __maps__remove
perf: purge all maps from the names tree
perf: top: fix global-buffer-overflow issue
perf: free all counts in perf_evsel__exit
perf: fix a memory leak of cpu_map object
perf: fix memory leak by expr__find_other
perf: fix a memory leak in test__perf_evsel__tp_sched_test
tools/lib/bpf/libbpf.c | 2 +-
tools/perf/Documentation/Build.txt | 20 +++++++++
tools/perf/Documentation/perf-config.txt | 2 +-
tools/perf/bench/epoll-ctl.c | 2 +-
tools/perf/bench/epoll-wait.c | 2 +-
tools/perf/builtin-top.c | 47 ++++++++++------------
tools/perf/tests/backward-ring-buffer.c | 2 +-
tools/perf/tests/evsel-tp-sched.c | 1 +
tools/perf/tests/expr.c | 5 ++-
tools/perf/tests/openat-syscall-all-cpus.c | 4 +-
tools/perf/util/build-id.c | 1 +
tools/perf/util/config.c | 3 +-
tools/perf/util/counts.c | 18 +++++++++
tools/perf/util/counts.h | 4 ++
tools/perf/util/evsel.c | 2 +
tools/perf/util/hist.c | 4 +-
tools/perf/util/map.c | 18 +++++++++
tools/perf/util/ordered-events.c | 2 +
tools/perf/util/parse-events.c | 2 +
tools/perf/util/stat.c | 18 ---------
20 files changed, 106 insertions(+), 53 deletions(-)
--
2.19.1
Powered by blists - more mailing lists