summaryrefslogtreecommitdiffstats
path: root/tools/perf/util/data_map.c
diff options
context:
space:
mode:
Diffstat (limited to 'tools/perf/util/data_map.c')
-rw-r--r--tools/perf/util/data_map.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/tools/perf/util/data_map.c b/tools/perf/util/data_map.c
index 66e58aaecce..aacb814a4ef 100644
--- a/tools/perf/util/data_map.c
+++ b/tools/perf/util/data_map.c
@@ -70,18 +70,15 @@ process_event(event_t *event, unsigned long offset, unsigned long head)
}
}
-int perf_header__read_build_ids(const struct perf_header *self,
- int input, off_t file_size)
+int perf_header__read_build_ids(int input, off_t size)
{
- off_t offset = self->data_offset + self->data_size;
struct build_id_event bev;
char filename[PATH_MAX];
+ off_t offset = lseek(input, 0, SEEK_CUR);
+ off_t limit = offset + size;
int err = -1;
- if (lseek(input, offset, SEEK_SET) < 0)
- return -1;
-
- while (offset < file_size) {
+ while (offset < limit) {
struct dso *dso;
ssize_t len;