[tip:perf/urgent] perf tools: Fix segfault when using srcline sort key

2012-10-19 Thread tip-bot for Namhyung Kim
Commit-ID:  ffe10c6f95412da01695e659e967747333d5e812
Gitweb: http://git.kernel.org/tip/ffe10c6f95412da01695e659e967747333d5e812
Author: Namhyung Kim 
AuthorDate: Mon, 15 Oct 2012 12:39:42 +0900
Committer:  Arnaldo Carvalho de Melo 
CommitDate: Tue, 16 Oct 2012 13:05:07 -0300

perf tools: Fix segfault when using srcline sort key

The srcline sort key is for grouping samples based on their source file
and line number.  It use addr2line tool to get the information but it
requires dso name.  It caused a segfault when a sample does not have the
name by dereferencing a NULL pointer.  Fix it by using raw ip addresses
for those samples.

Signed-off-by: Namhyung Kim 
Cc: Ingo Molnar 
Cc: Paul Mackerras 
Cc: Peter Zijlstra 
Link: 
http://lkml.kernel.org/r/1350272383-7016-1-git-send-email-namhy...@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo 
---
 tools/perf/util/sort.c |3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/tools/perf/util/sort.c b/tools/perf/util/sort.c
index b5b1b92..dd68f11 100644
--- a/tools/perf/util/sort.c
+++ b/tools/perf/util/sort.c
@@ -260,6 +260,9 @@ static int hist_entry__srcline_snprintf(struct hist_entry 
*self, char *bf,
if (path != NULL)
goto out_path;
 
+   if (!self->ms.map)
+   goto out_ip;
+
snprintf(cmd, sizeof(cmd), "addr2line -e %s %016" PRIx64,
 self->ms.map->dso->long_name, self->ip);
fp = popen(cmd, "r");
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[tip:perf/urgent] perf tools: Fix segfault when using srcline sort key

2012-10-19 Thread tip-bot for Namhyung Kim
Commit-ID:  ffe10c6f95412da01695e659e967747333d5e812
Gitweb: http://git.kernel.org/tip/ffe10c6f95412da01695e659e967747333d5e812
Author: Namhyung Kim namhyung@lge.com
AuthorDate: Mon, 15 Oct 2012 12:39:42 +0900
Committer:  Arnaldo Carvalho de Melo a...@redhat.com
CommitDate: Tue, 16 Oct 2012 13:05:07 -0300

perf tools: Fix segfault when using srcline sort key

The srcline sort key is for grouping samples based on their source file
and line number.  It use addr2line tool to get the information but it
requires dso name.  It caused a segfault when a sample does not have the
name by dereferencing a NULL pointer.  Fix it by using raw ip addresses
for those samples.

Signed-off-by: Namhyung Kim namhy...@kernel.org
Cc: Ingo Molnar mi...@kernel.org
Cc: Paul Mackerras pau...@samba.org
Cc: Peter Zijlstra a.p.zijls...@chello.nl
Link: 
http://lkml.kernel.org/r/1350272383-7016-1-git-send-email-namhy...@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo a...@redhat.com
---
 tools/perf/util/sort.c |3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/tools/perf/util/sort.c b/tools/perf/util/sort.c
index b5b1b92..dd68f11 100644
--- a/tools/perf/util/sort.c
+++ b/tools/perf/util/sort.c
@@ -260,6 +260,9 @@ static int hist_entry__srcline_snprintf(struct hist_entry 
*self, char *bf,
if (path != NULL)
goto out_path;
 
+   if (!self-ms.map)
+   goto out_ip;
+
snprintf(cmd, sizeof(cmd), addr2line -e %s %016 PRIx64,
 self-ms.map-dso-long_name, self-ip);
fp = popen(cmd, r);
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/