Home
last modified time | relevance | path

Searched refs:tails (Results 1 – 8 of 8) sorted by relevance

/linux/kernel/rcu/
H A Drcu_segcblist.c242 BUILD_BUG_ON(ARRAY_SIZE(rsclp->tails) != ARRAY_SIZE(rsclp->gp_seq)); in rcu_segcblist_init()
245 rsclp->tails[i] = &rsclp->head; in rcu_segcblist_init()
270 &rsclp->head != READ_ONCE(rsclp->tails[RCU_DONE_TAIL]); in rcu_segcblist_ready_cbs()
304 return *rsclp->tails[RCU_DONE_TAIL]; in rcu_segcblist_first_pend_cb()
335 WRITE_ONCE(*rsclp->tails[RCU_NEXT_TAIL], rhp); in rcu_segcblist_enqueue()
336 WRITE_ONCE(rsclp->tails[RCU_NEXT_TAIL], &rhp->next); in rcu_segcblist_enqueue()
363 WRITE_ONCE(*rsclp->tails[i], rhp); in rcu_segcblist_entrain()
365 WRITE_ONCE(rsclp->tails[i], &rhp->next); in rcu_segcblist_entrain()
383 WRITE_ONCE(rsclp->head, *rsclp->tails[RCU_DONE_TAIL]); in rcu_segcblist_extract_done_cbs()
384 WRITE_ONCE(*rsclp->tails[RCU_DONE_TAIL], NULL); in rcu_segcblist_extract_done_cbs()
[all …]
H A Drcu_segcblist.h105 return !READ_ONCE(*READ_ONCE(rsclp->tails[seg])); in rcu_segcblist_restempty()
115 return &rsclp->head == rsclp->tails[RCU_DONE_TAIL]; in rcu_segcblist_segempty()
116 return rsclp->tails[seg - 1] == rsclp->tails[seg]; in rcu_segcblist_segempty()
/linux/include/linux/
H A Drcu_segcblist.h192 struct rcu_head **tails[RCU_CBLIST_NSEGS]; member
206 .tails[RCU_DONE_TAIL] = &n.head, \
207 .tails[RCU_WAIT_TAIL] = &n.head, \
208 .tails[RCU_NEXT_READY_TAIL] = &n.head, \
209 .tails[RCU_NEXT_TAIL] = &n.head, \
/linux/Documentation/RCU/Design/Data-Structures/
H A DData-Structures.rst683 9 struct rcu_head **tails[RCU_CBLIST_NSEGS];
703 Each element of the ``->tails[]`` array references the ``->next``
710 ``->head`` pointer, the ``->tails[]`` array, and the callbacks is shown
716 in the list. The ``->tails[RCU_DONE_TAIL]`` array element references the
718 ready to invoke. The ``->tails[RCU_WAIT_TAIL]`` array element references
722 ``->tails[RCU_NEXT_READY_TAIL]`` array element references the same RCU
723 callback that ``->tails[RCU_WAIT_TAIL]`` does, which indicates that
725 ``->tails[RCU_NEXT_TAIL]`` array element references CB 4's ``->next``
728 ``->tails[RCU_NEXT_TAIL]`` array element always references the last RCU
733 ``->tails[RCU_NEXT_TAIL]`` array element: It can be ``NULL`` when this
/linux/fs/ntfs3/
H A Dfslog.c1609 u32 tails = 0; in last_log_lsn() local
1674 tails = 1; in last_log_lsn()
1719 if (!tails) { in last_log_lsn()
1731 tails = 1; in last_log_lsn()
1744 memmove(Add2Ptr(page_bufs, tails * log->page_size), best_page, in last_log_lsn()
1747 tails += 1; in last_log_lsn()
1777 if (tails < 0x10) in last_log_lsn()
1808 if (tails > 1) { in last_log_lsn()
2177 tails -= (page_off1 - page_off) / log->page_size; in last_log_lsn()
2179 tails -= 1; in last_log_lsn()
[all …]
/linux/drivers/bluetooth/
H A Dhci_bcm4377.c813 __le16 *tails = bcm4377->ring_state->completion_ring_tail; in bcm4377_poll_completion_ring() local
818 tail = le16_to_cpu(tails[ring->ring_id]); in bcm4377_poll_completion_ring()
834 tails[ring->ring_id] = cpu_to_le16(tail); in bcm4377_poll_completion_ring()
/linux/Documentation/networking/device_drivers/ethernet/toshiba/
H A Dspider_net.rst52 The tail pointer tails or trails the hardware pointer. When the
/linux/Documentation/driver-api/
H A Dxillybus.rst291 filled buffers being sent) and a latency held fairly low for tails of data.