Home
last modified time | relevance | path

Searched refs:prod_head (Results 1 – 3 of 3) sorted by relevance

/f-stack/freebsd/sys/
H A Dbuf_ring.h65 uint32_t prod_head, prod_next, cons_tail; in buf_ring_enqueue() local
82 prod_head = br->br_prod_head; in buf_ring_enqueue()
83 prod_next = (prod_head + 1) & br->br_prod_mask; in buf_ring_enqueue()
88 if (prod_head == br->br_prod_head && in buf_ring_enqueue()
96 } while (!atomic_cmpset_acq_int(&br->br_prod_head, prod_head, prod_next)); in buf_ring_enqueue()
98 if (br->br_ring[prod_head] != NULL) in buf_ring_enqueue()
101 br->br_ring[prod_head] = buf; in buf_ring_enqueue()
108 while (br->br_prod_tail != prod_head) in buf_ring_enqueue()
/f-stack/dpdk/lib/librte_ring/
H A Drte_ring_elem.h157 uint32_t idx = prod_head & r->mask; in __rte_ring_enqueue_elems_64()
190 uint32_t idx = prod_head & r->mask; in __rte_ring_enqueue_elems_128()
225 __rte_ring_enqueue_elems_64(r, prod_head, obj_table, num); in __rte_ring_enqueue_elems()
227 __rte_ring_enqueue_elems_128(r, prod_head, obj_table, num); in __rte_ring_enqueue_elems()
234 idx = prod_head & r->mask; in __rte_ring_enqueue_elems()
291 uint32_t idx = prod_head & r->mask; in __rte_ring_dequeue_elems_64()
324 uint32_t idx = prod_head & r->mask; in __rte_ring_dequeue_elems_128()
416 uint32_t prod_head, prod_next; in __rte_ring_do_enqueue_elem() local
420 &prod_head, &prod_next, &free_entries); in __rte_ring_do_enqueue_elem()
424 __rte_ring_enqueue_elems(r, prod_head, obj_table, esize, n); in __rte_ring_do_enqueue_elem()
[all …]
/f-stack/dpdk/doc/guides/prog_guide/
H A Dring_lib.rst94 The figures of the following sections refer to them as prod_head, prod_tail, cons_head and cons_tai…
104 In this example, only the producer head and tail (prod_head and prod_tail) are modified,
107 The initial state is to have a prod_head and prod_tail pointing at the same location.
112 First, *ring->prod_head* and ring->cons_tail are copied in local variables.
211 In this example, only the producer head and tail (prod_head and prod_tail) are modified.
213 The initial state is to have a prod_head and prod_tail pointing at the same location.
218 On both cores, *ring->prod_head* and ring->cons_tail are copied in local variables.
238 * If ring->prod_head is different to local variable prod_head,
241 * Otherwise, ring->prod_head is set to local prod_next,
273 A core can only update it if ring->prod_tail is equal to the prod_head local variable.
[all …]