[tip:perfcounters/core] perf_counter tools: Initialize a stack variable before use

tip-bot for Arjan van de Ven
2009-06-06T19:25:17Z

Commit-ID: e9fbc9dc9214d6a9de7d62627be5414804fd7b9f
Gitweb: http://git.kernel.org/tip/e9fbc9dc9214d6a9de7d62627be5414804fd7b9f
Author: Arjan van de Ven <arjan@linux.intel.com>
AuthorDate: Sat, 6 Jun 2009 21:22:33 +0200
Committer: Ingo Molnar <mingo@elte.hu>
CommitDate: Sat, 6 Jun 2009 21:22:33 +0200

perf_counter tools: Initialize a stack variable before use

the "perf report" utility crashed in some circumstances
because the "sym" stack variable was not initialized before used
(as also proven by valgrind).

With this fix both the crash goes away and valgrind no longer complains.

Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
LKML-Reference: <new-submission>
Signed-off-by: Ingo Molnar <mingo@elte.hu>

---
tools/perf/util/symbol.c | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/tools/perf/util/symbol.c b/tools/perf/util/symbol.c
index 253821d..158588c 100644
--- a/tools/perf/util/symbol.c
+++ b/tools/perf/util/symbol.c
@@ -457,6 +457,8 @@ static int dso__load_sym(struct dso *self, int fd, const char *name,

nr_syms = shdr.sh_size / shdr.sh_entsize;

+ memset(&sym, 0, sizeof(sym));
+
elf_symtab__for_each_symbol(syms, nr_syms, index, sym) {
struct symbol *f;
uint64_t obj_start;