data_tail
__u64 data_tail; /* user-space written tail */
tail = READ_ONCE(rb->user_page->data_tail);
smp_store_release(&base->data_tail, tail);
__u64 data_tail; /* user-space written tail */
__u64 data_tail = header->data_tail;
while (data_head != data_tail) {
data_tail += ehdr_size;
unsigned long data_tail, data_head;
data_tail = rb->data_tail;
if ((data_head - data_tail) < size)
data_tail &= PERF_MMAP_DATA_MASK;
copy_sample_data(base, data_tail, dest, size);
rb->data_tail += size;
if ((rb->data_tail + size) > data_head)
rb->data_tail = data_head;
rb->data_tail += size;
__u64 data_head, data_tail;
data_tail = header->data_tail;
while (data_head != data_tail) {
ehdr = base + (data_tail & mmap_mask);
data_tail += ehdr_size;
ring_buffer_write_tail(header, data_tail);
unsigned long data_head, data_tail;
data_tail = metadata_page->data_tail;
if (data_head - data_tail < sizeof(header))
data_tail += sizeof(header);
return sample_buff + page_size + data_tail;
data_tail += *size;
if ((metadata_page->data_tail + *size) > metadata_page->data_head)
data_tail = metadata_page->data_head;
data_tail += *size;