diff options
author | Arnaldo Carvalho de Melo <acme@redhat.com> | 2019-09-30 14:53:33 -0400 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2019-09-30 16:30:04 -0400 |
commit | 16ed3c1e91159e28b02f11f71ff4ce4cbc6f99e4 (patch) | |
tree | 98d9af57d47b7d833bddbb4e91ceb632c02a67a5 /tools/perf/util/annotate.c | |
parent | 42d7a9107d83223a5fcecc6732d626a6c074cbc2 (diff) |
perf annotate: Return appropriate error code for allocation failures
We should return errno or the annotation extra range understood by
symbol__strerror_disassemble() instead of -1, fix it, returning ENOMEM
instead.
Reported-by: Russell King - ARM Linux admin <linux@armlinux.org.uk>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>,
Cc: Will Deacon <will@kernel.org>
Link: https://lkml.kernel.org/n/tip-8of1cmj3rz0mppfcshc9bbqq@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/util/annotate.c')
-rw-r--r-- | tools/perf/util/annotate.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/tools/perf/util/annotate.c b/tools/perf/util/annotate.c index dc15352924f9..b49ecdd51188 100644 --- a/tools/perf/util/annotate.c +++ b/tools/perf/util/annotate.c | |||
@@ -1668,7 +1668,7 @@ static int dso__disassemble_filename(struct dso *dso, char *filename, size_t fil | |||
1668 | 1668 | ||
1669 | build_id_path = strdup(filename); | 1669 | build_id_path = strdup(filename); |
1670 | if (!build_id_path) | 1670 | if (!build_id_path) |
1671 | return -1; | 1671 | return ENOMEM; |
1672 | 1672 | ||
1673 | /* | 1673 | /* |
1674 | * old style build-id cache has name of XX/XXXXXXX.. while | 1674 | * old style build-id cache has name of XX/XXXXXXX.. while |
@@ -2977,7 +2977,7 @@ int symbol__annotate2(struct symbol *sym, struct map *map, struct evsel *evsel, | |||
2977 | 2977 | ||
2978 | notes->offsets = zalloc(size * sizeof(struct annotation_line *)); | 2978 | notes->offsets = zalloc(size * sizeof(struct annotation_line *)); |
2979 | if (notes->offsets == NULL) | 2979 | if (notes->offsets == NULL) |
2980 | return -1; | 2980 | return ENOMEM; |
2981 | 2981 | ||
2982 | if (perf_evsel__is_group_event(evsel)) | 2982 | if (perf_evsel__is_group_event(evsel)) |
2983 | nr_pcnt = evsel->core.nr_members; | 2983 | nr_pcnt = evsel->core.nr_members; |