Messages in this thread | | | Date | Wed, 24 Jul 2019 16:44:57 -0700 | Subject | [PATCH 0/3] Perf uninitialized value fixes | From | Numfor Mbiziwo-Tiapo <> |
| |
These patches are all warnings that the MSAN (Memory Sanitizer) build of perf has caught.
To build perf with MSAN enabled run: make -C tools/perf CLANG=1 CC=clang EXTRA_CFLAGS="-fsanitize=memory\ -fsanitize-memory-track-origins"
(The -fsanitizer-memory-track-origins makes the bugs clearer but isn't strictly necessary.)
(Additionally, llvm might have to be installed and clang might have to be specified as the compiler - export CC=/usr/bin/clang).
The patches "Fix util.c use of uninitialized value warning" and "Fix annotate.c use of uninitialized value error" build on top of each other (the changes in Fix util.c use of uninitialized value warning must be made first).
When running the commands provided in the repro instructions, MSAN will generate false positive uninitialized memory errors. This is happening because libc is not MSAN-instrumented. Finding a way to build libc with MSAN will get rid of these false positives and allow the real warnings mentioned in the patches to be shown.
Numfor Mbiziwo-Tiapo (3): Fix util.c use of uninitialized value warning Fix annotate.c use of uninitialized value error Fix sched-messaging.c use of uninitialized value errors
tools/perf/bench/sched-messaging.c | 3 ++- tools/perf/util/annotate.c | 15 +++++++++++---- tools/perf/util/header.c | 2 +- 3 files changed, 14 insertions(+), 6 deletions(-)
-- 2.22.0.657.g960e92d24f-goog
| |