Lines Matching refs:md
323 int perf_mmap__push(struct mmap *md, void *to,
326 u64 head = perf_mmap__read_head(&md->core);
327 unsigned char *data = md->core.base + page_size;
332 rc = perf_mmap__read_init(&md->core);
336 size = md->core.end - md->core.start;
338 if ((md->core.start & md->core.mask) + size != (md->core.end & md->core.mask)) {
339 buf = &data[md->core.start & md->core.mask];
340 size = md->core.mask + 1 - (md->core.start & md->core.mask);
341 md->core.start += size;
343 if (push(md, to, buf, size) < 0) {
349 buf = &data[md->core.start & md->core.mask];
350 size = md->core.end - md->core.start;
351 md->core.start += size;
353 if (push(md, to, buf, size) < 0) {
358 md->core.prev = head;
359 perf_mmap__consume(&md->core);