Lines Matching refs:head
19 head - where new reads happen in the ring buffer.
100 the head page, and its previous pointer pointing to a page before
101 the head page.
109 new head page.
115 show the head page in the buffer, it is for demonstrating a swap
202 head page - the next page in the ring buffer that will be swapped
297 head page
303 head page commit page |
311 There is a special case that the head page is after either the commit page
313 swapped with the reader page. This is because the head page is always
335 head page
338 In this case, the head page will not move when the tail and commit
346 When the tail meets the head page, if the buffer is in overwrite mode,
347 the head page will be pushed ahead one. If the buffer is in producer/consumer
361 head page
373 head page
385 head page
387 Note, the reader page will still point to the previous head page.
388 But when a swap takes place, it will use the most recent head page.
408 HEADER - the page being pointed to is a head page
411 and was or is about to be a head page.
430 This pointer means the next page is the head page.
432 When the tail page meets the head pointer, it will use cmpxchg to
461 head page does not have the HEADER flag set, the compare will fail
462 and the reader will need to look for the new head page and try again.
480 the head page.
496 It does a cmpxchg with the pointer to the previous head page to make it
498 flag set. This action atomically moves the head page forward.
513 After the new head page is set, the previous pointer of the head page is
531 |page |-------H-----------+ <--- New head page
543 by its previous pointer (the one that now points to the new head page)
564 The way the head page moves forward:
566 When the tail page meets the head page and the buffer is in overwrite mode
567 and more writes take place, the head page must be moved forward before the
569 performs a cmpxchg to convert the pointer to the head page from the HEADER
571 not be able to swap the head page from the buffer, nor will it be able to
572 move the head page, until the writer is finished with the move.
593 The following page will be made into the new head page.
603 After the new head page has been set, we can set the old head page
614 After the head page has been moved, the tail page may now move forward.
654 If the tail page were to simply push the head page forward, the commit when
658 before pushing the head page. If it is, then it can be assumed that the
675 the head page if the head page is the next page. If the head page
716 But the moving of the head page is a bit more complex.
726 The write converts the head page pointer to UPDATE.
737 page is a head page, but it is also nested. It will detect that
742 The nested writer will set the new head page pointer.
791 The write converts the head page pointer to UPDATE.
802 head page.
825 Another writer preempts and sees the page after the tail page is a head page.
838 The writer will move the head page forward:
896 while it updates the HEAD page. It will then update the head page to
897 what it thinks is the new head page.
941 Now the writer can update the head page. This is also why the head page must
943 the reader from seeing the incorrect head page.