diff options
Diffstat (limited to 'tools/perf/util/srcline.c')
-rw-r--r-- | tools/perf/util/srcline.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/tools/perf/util/srcline.c b/tools/perf/util/srcline.c index 77c180637138..ac877f96fed7 100644 --- a/tools/perf/util/srcline.c +++ b/tools/perf/util/srcline.c | |||
@@ -258,7 +258,7 @@ char *get_srcline(struct dso *dso, unsigned long addr) | |||
258 | const char *dso_name; | 258 | const char *dso_name; |
259 | 259 | ||
260 | if (!dso->has_srcline) | 260 | if (!dso->has_srcline) |
261 | return SRCLINE_UNKNOWN; | 261 | goto out; |
262 | 262 | ||
263 | if (dso->symsrc_filename) | 263 | if (dso->symsrc_filename) |
264 | dso_name = dso->symsrc_filename; | 264 | dso_name = dso->symsrc_filename; |
@@ -289,7 +289,9 @@ out: | |||
289 | dso->has_srcline = 0; | 289 | dso->has_srcline = 0; |
290 | dso__free_a2l(dso); | 290 | dso__free_a2l(dso); |
291 | } | 291 | } |
292 | return SRCLINE_UNKNOWN; | 292 | if (asprintf(&srcline, "%s[%lx]", dso->short_name, addr) < 0) |
293 | return SRCLINE_UNKNOWN; | ||
294 | return srcline; | ||
293 | } | 295 | } |
294 | 296 | ||
295 | void free_srcline(char *srcline) | 297 | void free_srcline(char *srcline) |