Lines Matching defs:tail_page

435 	struct buffer_page	*tail_page;
479 * head_page == tail_page && head == tail then buffer is empty.
496 struct buffer_page *tail_page; /* write to tail */
640 struct buffer_page *tail_page = READ_ONCE(cpu_buffer->tail_page);
649 if (page == tail_page || WARN_ON_ONCE(stop++ > 100))
717 return rb_fix_abs_ts(ts, cpu_buffer->tail_page->page->time_stamp);
1432 struct buffer_page *tail_page,
1461 if (tail_page == READ_ONCE(cpu_buffer->tail_page)) {
1486 /* Either we update tail_page or an interrupt does */
1487 if (try_cmpxchg(&cpu_buffer->tail_page, &tail_page, next_page))
1919 if (head_page == cpu_buffer->tail_page)
1926 if (head_page == cpu_buffer->tail_page)
2212 cpu_buffer->tail_page = bpage;
2466 !cpu_buffer->head_page || !cpu_buffer->commit_page || !cpu_buffer->tail_page) {
2468 (cpu_buffer->head_page || cpu_buffer->commit_page || cpu_buffer->tail_page)) {
2474 if (!cpu_buffer->tail_page)
2475 pr_warn(" Missing tail_page\n");
2480 cpu_buffer->tail_page = cpu_buffer->commit_page = cpu_buffer->head_page;
2817 struct list_head *tail_page, *to_remove, *next_page;
2837 tail_page = &cpu_buffer->tail_page->list;
2843 if (cpu_buffer->tail_page == cpu_buffer->reader_page)
2844 tail_page = rb_list_head(tail_page->next);
2845 to_remove = tail_page;
2861 * Now we remove all pages between tail_page and next_page.
2865 tail_page->next = (struct list_head *)((unsigned long)next_page |
2868 next_page->prev = tail_page;
3430 struct buffer_page *tail_page,
3445 type = rb_head_page_set_update(cpu_buffer, next_page, tail_page,
3556 buffer_tail_page = READ_ONCE(cpu_buffer->tail_page);
3561 if (buffer_tail_page != tail_page &&
3575 tail_page,
3590 struct buffer_page *tail_page = info->tail_page;
3596 * must fill the old tail_page with padding.
3605 tail_page->real_end = 0;
3607 local_sub(length, &tail_page->write);
3611 event = __rb_page_index(tail_page, tail);
3618 tail_page->real_end = tail;
3642 local_sub(length, &tail_page->write);
3655 /* Make sure the padding is visible before the tail_page->write update */
3660 local_sub(length, &tail_page->write);
3672 struct buffer_page *tail_page = info->tail_page;
3678 next_page = tail_page;
3706 if (rb_is_head_page(next_page, &tail_page->list)) {
3723 tail_page,
3741 cpu_buffer->tail_page) &&
3750 rb_tail_page_update(cpu_buffer, tail_page, next_page);
3938 bpage = READ_ONCE(cpu_buffer->tail_page);
3941 * Make sure the tail_page is still the same and
4013 while (cpu_buffer->commit_page != READ_ONCE(cpu_buffer->tail_page)) {
4017 rb_is_reader_page(cpu_buffer->tail_page)))
4021 * of the tail_page did it for this page.
4054 if (unlikely(cpu_buffer->commit_page != READ_ONCE(cpu_buffer->tail_page)))
4498 bpage = info->tail_page->page;
4556 struct buffer_page *tail_page;
4559 /* Don't let the compiler play games with cpu_buffer->tail_page */
4560 tail_page = info->tail_page = READ_ONCE(cpu_buffer->tail_page);
4562 /*A*/ w = local_read(&tail_page->write) & RB_WRITE_MASK;
4594 /*C*/ write = local_add_return(info->length, &tail_page->write);
4643 /*F*/ if (write == (local_read(&tail_page->write) & RB_WRITE_MASK) &&
4676 event = __rb_page_index(tail_page, tail);
4679 local_inc(&tail_page->entries);
4686 tail_page->page->time_stamp = info->ts;
5186 if (cpu_buffer->tail_page == cpu_buffer->reader_page)
6398 cpu_buffer->tail_page = cpu_buffer->head_page;
7229 cpu_buffer->tail_page = cpu_buffer->commit_page = cpu_buffer->head_page;
7703 } else if (!WARN_ONCE(cpu_buffer->reader_page == cpu_buffer->tail_page,
7707 * There shouldn't be any missed events if the tail_page