diff options
Diffstat (limited to 'tools/perf/util/data_map.c')
-rw-r--r-- | tools/perf/util/data_map.c | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/tools/perf/util/data_map.c b/tools/perf/util/data_map.c index 66e58aaecce3..aacb814a4eff 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) | |||
70 | } | 70 | } |
71 | } | 71 | } |
72 | 72 | ||
73 | int perf_header__read_build_ids(const struct perf_header *self, | 73 | int perf_header__read_build_ids(int input, off_t size) |
74 | int input, off_t file_size) | ||
75 | { | 74 | { |
76 | off_t offset = self->data_offset + self->data_size; | ||
77 | struct build_id_event bev; | 75 | struct build_id_event bev; |
78 | char filename[PATH_MAX]; | 76 | char filename[PATH_MAX]; |
77 | off_t offset = lseek(input, 0, SEEK_CUR); | ||
78 | off_t limit = offset + size; | ||
79 | int err = -1; | 79 | int err = -1; |
80 | 80 | ||
81 | if (lseek(input, offset, SEEK_SET) < 0) | 81 | while (offset < limit) { |
82 | return -1; | ||
83 | |||
84 | while (offset < file_size) { | ||
85 | struct dso *dso; | 82 | struct dso *dso; |
86 | ssize_t len; | 83 | ssize_t len; |
87 | 84 | ||