diff options
-rw-r--r-- | tools/perf/builtin-record.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c index 87e28a4e33ba..a1b040394170 100644 --- a/tools/perf/builtin-record.c +++ b/tools/perf/builtin-record.c | |||
@@ -65,8 +65,9 @@ static int process_synthesized_event(struct perf_tool *tool, | |||
65 | return record__write(rec, event, event->header.size); | 65 | return record__write(rec, event, event->header.size); |
66 | } | 66 | } |
67 | 67 | ||
68 | static int record__mmap_read(struct record *rec, struct perf_mmap *md) | 68 | static int record__mmap_read(struct record *rec, int idx) |
69 | { | 69 | { |
70 | struct perf_mmap *md = &rec->evlist->mmap[idx]; | ||
70 | unsigned int head = perf_mmap__read_head(md); | 71 | unsigned int head = perf_mmap__read_head(md); |
71 | unsigned int old = md->prev; | 72 | unsigned int old = md->prev; |
72 | unsigned char *data = md->base + page_size; | 73 | unsigned char *data = md->base + page_size; |
@@ -102,8 +103,7 @@ static int record__mmap_read(struct record *rec, struct perf_mmap *md) | |||
102 | } | 103 | } |
103 | 104 | ||
104 | md->prev = old; | 105 | md->prev = old; |
105 | perf_mmap__write_tail(md, old); | 106 | perf_evlist__mmap_consume(rec->evlist, idx); |
106 | |||
107 | out: | 107 | out: |
108 | return rc; | 108 | return rc; |
109 | } | 109 | } |
@@ -245,7 +245,7 @@ static int record__mmap_read_all(struct record *rec) | |||
245 | 245 | ||
246 | for (i = 0; i < rec->evlist->nr_mmaps; i++) { | 246 | for (i = 0; i < rec->evlist->nr_mmaps; i++) { |
247 | if (rec->evlist->mmap[i].base) { | 247 | if (rec->evlist->mmap[i].base) { |
248 | if (record__mmap_read(rec, &rec->evlist->mmap[i]) != 0) { | 248 | if (record__mmap_read(rec, i) != 0) { |
249 | rc = -1; | 249 | rc = -1; |
250 | goto out; | 250 | goto out; |
251 | } | 251 | } |