| /dpdk/lib/eal/windows/include/sys/ |
| H A D | queue.h | 107 (head)->trace.prevline = (head)->trace.lastline; \ 108 (head)->trace.prevfile = (head)->trace.lastfile; \ 198 #define SLIST_EMPTY(head) ((head)->slh_first == NULL) argument 200 #define SLIST_FIRST(head) ((head)->slh_first) argument 319 #define STAILQ_FIRST(head) ((head)->stqh_first) argument 343 (head)->stqh_last = &STAILQ_FIRST((head)); \ 394 (head)->stqh_last = &STAILQ_FIRST((head)); \ 502 #define LIST_EMPTY(head) ((head)->lh_first == NULL) argument 504 #define LIST_FIRST(head) ((head)->lh_first) argument 688 #define TAILQ_FIRST(head) ((head)->tqh_first) argument [all …]
|
| /dpdk/drivers/event/dlb2/pf/base/ |
| H A D | dlb2_osdep_list.h | 23 #define TAILQ_FOREACH_ENTRY(ptr, head, name, iter) \ argument 24 for ((iter) = TAILQ_FIRST(&head); \ 32 for ((iter) = TAILQ_FIRST(&head); \ 49 TAILQ_INIT(head); in dlb2_list_init_head() 60 TAILQ_INSERT_TAIL(head, entry, node); in dlb2_list_add() 71 TAILQ_REMOVE(head, entry, node); in dlb2_list_del() 83 return TAILQ_EMPTY(head); in dlb2_list_empty() 92 struct dlb2_list_head *head) in dlb2_list_splice() argument 94 TAILQ_CONCAT(head, src_head, node); in dlb2_list_splice() 104 (TAILQ_FIRST(&head) ? \ [all …]
|
| /dpdk/drivers/net/fm10k/base/ |
| H A D | fm10k_mbx.c | 17 fifo->head = 0; in fm10k_fifo_init() 189 return (head > mbx->head) ? --head : ++head; in fm10k_mbx_head_add() 205 return (head < mbx->head) ? ++head : --head; in fm10k_mbx_head_sub() 356 head += end; in fm10k_mbx_write_copy() 443 head++; in fm10k_mbx_read_copy() 455 head++; in fm10k_mbx_read_copy() 989 if (!head || (head == FM10K_MSG_HDR_MASK(HEAD))) in fm10k_mbx_validate_msg_hdr() 1008 if (!head || (head == FM10K_MSG_HDR_MASK(HEAD))) in fm10k_mbx_validate_msg_hdr() 1260 u16 head; in fm10k_mbx_process_disconnect() local 1312 u16 head; in fm10k_mbx_process_error() local [all …]
|
| /dpdk/drivers/event/sw/ |
| H A D | iq_chunk.h | 50 while (head) { in iq_free_chunk_list() 52 next = head->next; in iq_free_chunk_list() 53 iq_free_chunk(sw, head); in iq_free_chunk_list() 54 head = next; in iq_free_chunk_list() 62 iq->tail = iq->head; in iq_init() 95 iq->head = next; in iq_pop() 118 current = iq->head; in iq_dequeue_burst() 143 iq->head = next; in iq_dequeue_burst() 146 iq->head = current; in iq_dequeue_burst() 185 new_head->next = iq->head; in iq_put_back() [all …]
|
| /dpdk/lib/eal/common/ |
| H A D | eal_common_tailqs.c | 57 i, tailq->name, head->tqh_first, head->tqh_last); in rte_dump_tailq() 65 struct rte_tailq_head *head = NULL; in rte_eal_tailq_create() local 72 head = &mcfg->tailq_head[rte_tailqs_count]; in rte_eal_tailq_create() 73 strlcpy(head->name, name, sizeof(head->name) - 1); in rte_eal_tailq_create() 74 TAILQ_INIT(&head->tailq_head); in rte_eal_tailq_create() 78 return head; in rte_eal_tailq_create() 102 t->head = rte_eal_tailq_create(t->name); in rte_eal_tailq_update() 104 t->head = rte_eal_tailq_lookup(t->name); in rte_eal_tailq_update() 121 if (t->head == NULL) { in rte_eal_tailq_register() 132 t->head = NULL; in rte_eal_tailq_register() [all …]
|
| /dpdk/lib/ring/ |
| H A D | rte_ring_hts_elem_pvt.h | 45 while (p->pos.head != p->pos.tail) { in __rte_ring_hts_head_wait() 83 *free_entries = capacity + r->cons.tail - op.pos.head; in __rte_ring_hts_move_prod_head() 94 np.pos.head = op.pos.head + n; in __rte_ring_hts_move_prod_head() 105 *old_head = op.pos.head; in __rte_ring_hts_move_prod_head() 139 *entries = r->prod.tail - op.pos.head; in __rte_ring_hts_move_cons_head() 149 np.pos.head = op.pos.head + n; in __rte_ring_hts_move_cons_head() 160 *old_head = op.pos.head; in __rte_ring_hts_move_cons_head() 191 uint32_t free, head; in __rte_ring_do_hts_enqueue_elem() local 197 __rte_ring_hts_update_tail(&r->hts_prod, head, n, 1); in __rte_ring_do_hts_enqueue_elem() 232 uint32_t entries, head; in __rte_ring_do_hts_dequeue_elem() local [all …]
|
| H A D | rte_ring_peek_elem_pvt.h | 36 h = ht->head; in __rte_ring_st_get_tail() 61 ht->head = pos; in __rte_ring_st_set_head_tail() 82 n = p.pos.head - p.pos.tail; in __rte_ring_hts_get_tail() 104 p.pos.head = tail + num; in __rte_ring_hts_set_head_tail() 105 p.pos.tail = p.pos.head; in __rte_ring_hts_set_head_tail() 117 uint32_t free, head, next; in __rte_ring_do_enqueue_start() local 122 behavior, &head, &next, &free); in __rte_ring_do_enqueue_start() 126 &head, &free); in __rte_ring_do_enqueue_start() 151 uint32_t avail, head, next; in __rte_ring_do_dequeue_start() local 156 behavior, &head, &next, &avail); in __rte_ring_do_dequeue_start() [all …]
|
| H A D | rte_ring_rts_elem_pvt.h | 38 h.raw = __atomic_load_n(&ht->head.raw, __ATOMIC_RELAXED); in __rte_ring_rts_update_tail() 62 h->raw = __atomic_load_n(&ht->head.raw, __ATOMIC_ACQUIRE); in __rte_ring_rts_head_wait() 79 oh.raw = __atomic_load_n(&r->rts_prod.head.raw, __ATOMIC_ACQUIRE); in __rte_ring_rts_move_prod_head() 116 } while (__atomic_compare_exchange_n(&r->rts_prod.head.raw, in __rte_ring_rts_move_prod_head() 135 oh.raw = __atomic_load_n(&r->rts_cons.head.raw, __ATOMIC_ACQUIRE); in __rte_ring_rts_move_cons_head() 171 } while (__atomic_compare_exchange_n(&r->rts_cons.head.raw, in __rte_ring_rts_move_cons_head() 206 uint32_t free, head; in __rte_ring_do_rts_enqueue_elem() local 208 n = __rte_ring_rts_move_prod_head(r, n, behavior, &head, &free); in __rte_ring_do_rts_enqueue_elem() 211 __rte_ring_enqueue_elems(r, head, obj_table, esize, n); in __rte_ring_do_rts_enqueue_elem() 247 uint32_t entries, head; in __rte_ring_do_rts_dequeue_elem() local [all …]
|
| H A D | rte_ring_peek_zc.h | 98 __rte_ring_get_elem_addr(struct rte_ring *r, uint32_t head, in __rte_ring_get_elem_addr() argument 106 idx = head & r->mask; in __rte_ring_get_elem_addr() 128 uint32_t free, head, next; in __rte_ring_do_enqueue_zc_elem_start() local 133 behavior, &head, &next, &free); in __rte_ring_do_enqueue_zc_elem_start() 136 n = __rte_ring_hts_move_prod_head(r, n, behavior, &head, &free); in __rte_ring_do_enqueue_zc_elem_start() 148 __rte_ring_get_elem_addr(r, head, esize, n, &zcd->ptr1, in __rte_ring_do_enqueue_zc_elem_start() 335 uint32_t avail, head, next; in __rte_ring_do_dequeue_zc_elem_start() local 340 behavior, &head, &next, &avail); in __rte_ring_do_dequeue_zc_elem_start() 344 &head, &avail); in __rte_ring_do_dequeue_zc_elem_start() 356 __rte_ring_get_elem_addr(r, head, esize, n, &zcd->ptr1, in __rte_ring_do_dequeue_zc_elem_start()
|
| H A D | rte_ring_generic_pvt.h | 68 *old_head = r->prod.head; in __rte_ring_move_prod_head() 93 r->prod.head = *new_head, success = 1; in __rte_ring_move_prod_head() 95 success = rte_atomic32_cmpset(&r->prod.head, in __rte_ring_move_prod_head() 138 *old_head = r->cons.head; in __rte_ring_move_cons_head() 161 r->cons.head = *new_head; in __rte_ring_move_cons_head() 165 success = rte_atomic32_cmpset(&r->cons.head, *old_head, in __rte_ring_move_cons_head()
|
| H A D | rte_ring_c11_pvt.h | 64 *old_head = __atomic_load_n(&r->prod.head, __ATOMIC_RELAXED); in __rte_ring_move_prod_head() 95 r->prod.head = *new_head, success = 1; in __rte_ring_move_prod_head() 98 success = __atomic_compare_exchange_n(&r->prod.head, in __rte_ring_move_prod_head() 140 *old_head = __atomic_load_n(&r->cons.head, __ATOMIC_RELAXED); in __rte_ring_move_cons_head() 170 r->cons.head = *new_head, success = 1; in __rte_ring_move_cons_head() 173 success = __atomic_compare_exchange_n(&r->cons.head, in __rte_ring_move_cons_head()
|
| /dpdk/lib/reorder/ |
| H A D | rte_reorder.c | 39 unsigned int head; /**< insertion point in buffer */ member 287 if (order_buf->entries[order_buf->head] == NULL) { in rte_reorder_fill_overflow() 288 order_buf->head = (order_buf->head + 1) & order_buf->mask; in rte_reorder_fill_overflow() 294 ready_buf->entries[ready_buf->head] = in rte_reorder_fill_overflow() 295 order_buf->entries[order_buf->head]; in rte_reorder_fill_overflow() 297 order_buf->entries[order_buf->head] = NULL; in rte_reorder_fill_overflow() 300 order_buf->head = (order_buf->head + 1) & order_buf->mask; in rte_reorder_fill_overflow() 305 ready_buf->head = (ready_buf->head + 1) & ready_buf->mask; in rte_reorder_fill_overflow() 400 (order_buf->entries[order_buf->head] != NULL)) { in rte_reorder_drain() 402 order_buf->entries[order_buf->head] = NULL; in rte_reorder_drain() [all …]
|
| /dpdk/drivers/net/bnxt/tf_core/ |
| H A D | ll.c | 14 ll->head = NULL; in ll_init() 23 if (ll->head == NULL) { in ll_insert() 24 ll->head = entry; in ll_insert() 29 entry->next = ll->head; in ll_insert() 32 ll->head = entry->next->prev; in ll_insert() 41 if (ll->head == entry && ll->tail == entry) { in ll_delete() 42 ll->head = NULL; in ll_delete() 44 } else if (ll->head == entry) { in ll_delete() 45 ll->head = entry->next; in ll_delete() 46 ll->head->prev = NULL; in ll_delete()
|
| /dpdk/drivers/bus/dpaa/include/ |
| H A D | dpaa_rbtree.h | 37 struct rb_node *head, *tail; member 43 tree->head = tree->tail = NULL; in dpa_rbtree_init() 52 struct rb_node *node = tree->head; \ 54 tree->head = tree->tail = &obj->node_field; \ 63 if (tree->head == node) \ 64 tree->head = &obj->node_field; \ 82 if (tree->head == &obj->node_field) { \ 85 tree->head = tree->tail = NULL; \ 88 tree->head = tree->head->next; \ 89 tree->head->prev = NULL; \ [all …]
|
| /dpdk/drivers/net/thunderx/base/ |
| H A D | nicvf_bsvf.c | 12 static STAILQ_HEAD(, svf_entry) head = STAILQ_HEAD_INITIALIZER(head); 20 STAILQ_INSERT_TAIL(&head, entry, next); in nicvf_bsvf_push() 28 assert(!STAILQ_EMPTY(&head)); in nicvf_bsvf_pop() 30 entry = STAILQ_FIRST(&head); in nicvf_bsvf_pop() 35 STAILQ_REMOVE_HEAD(&head, next); in nicvf_bsvf_pop() 43 return STAILQ_EMPTY(&head); in nicvf_bsvf_empty()
|
| /dpdk/drivers/event/opdl/ |
| H A D | opdl_ring.c | 72 uint32_t head; member 293 uint32_t head = s->head; in opdl_ring_input_singlethread() local 301 s->head += num_entries; in opdl_ring_input_singlethread() 330 mgr->claims[claim_mgr_index(mgr->mgr_head - 1)].head = head; in claim_mgr_add() 332 mgr->claims[claim_mgr_index(mgr->mgr_head)].head = head; in claim_mgr_add() 347 *head = mgr->claims[claim_mgr_index(mgr->mgr_tail)].head; in claim_mgr_read() 374 uint32_t head; in opdl_stage_disclaim_multithread_n() local 599 *seq = s->head; in opdl_stage_claim_copy_singlethread() 651 uint32_t head = s->head; in opdl_ring_copy_from_burst() local 671 uint32_t head = s->head; in opdl_ring_copy_to_burst() local [all …]
|
| /dpdk/drivers/net/mlx5/ |
| H A D | mlx5_utils.h | 599 (elem)->field.next = *(head); \ 601 if (*(head)) { \ 602 (peer) = mlx5_ipool_get(pool, *(head)); \ 606 *(head) = (idx); \ 613 MLX5_ASSERT(head); \ 626 if (*(head) == (idx)) \ 627 *(head) = (elem)->field.next; \ 631 for ((idx) = (head), (elem) = \ 645 (elem)->field.next = *(head); \ 646 *(head) = (idx); \ [all …]
|
| /dpdk/app/test-eventdev/ |
| H A D | evt_test.c | 11 static STAILQ_HEAD(, evt_test_entry) head = STAILQ_HEAD_INITIALIZER(head); 16 STAILQ_INSERT_TAIL(&head, entry, next); in evt_test_register() 27 STAILQ_FOREACH(entry, &head, next) in evt_test_get() 39 STAILQ_FOREACH(entry, &head, next) in evt_test_dump_names()
|
| /dpdk/lib/vhost/ |
| H A D | vhost_crypto.c | 227 struct vring_desc *head; member 493 if (desc < head) in find_write_desc() 507 struct vhost_crypto_desc *head, in reach_inhdr() argument 534 desc >= head && in move_desc() 613 while (desc >= head && desc - head < (int)max_n_descs && left) { in copy_data() 734 wb_data = head; in prepare_write_back_data() 815 return head; in prepare_write_back_data() 818 if (head) in prepare_write_back_data() 1196 dlen = head->len; in vhost_crypto_process_one_req() 1203 head = src_desc; in vhost_crypto_process_one_req() [all …]
|
| /dpdk/drivers/net/sfc/ |
| H A D | sfc_dp.c | 32 sfc_dp_find_by_name(struct sfc_dp_list *head, enum sfc_dp_type type, in sfc_dp_find_by_name() argument 37 TAILQ_FOREACH(entry, head, links) { in sfc_dp_find_by_name() 49 sfc_dp_find_by_caps(struct sfc_dp_list *head, enum sfc_dp_type type, in sfc_dp_find_by_caps() argument 54 TAILQ_FOREACH(entry, head, links) { in sfc_dp_find_by_caps() 67 sfc_dp_register(struct sfc_dp_list *head, struct sfc_dp *entry) in sfc_dp_register() argument 69 if (sfc_dp_find_by_name(head, entry->type, entry->name) != NULL) { in sfc_dp_register() 79 TAILQ_INSERT_TAIL(head, entry, links); in sfc_dp_register()
|
| /dpdk/drivers/net/ena/base/ |
| H A D | ena_eth_com.h | 176 u16 unreported_comp, head; in ena_com_update_dev_comp_head() local 180 head = io_cq->head; in ena_com_update_dev_comp_head() 181 unreported_comp = head - io_cq->last_head_update; in ena_com_update_dev_comp_head() 187 io_cq->qid, head); in ena_com_update_dev_comp_head() 188 ENA_REG_WRITE32(io_cq->bus, head, io_cq->cq_head_db_reg); in ena_com_update_dev_comp_head() 189 io_cq->last_head_update = head; in ena_com_update_dev_comp_head() 217 io_cq->head++; in ena_com_cq_inc_head() 220 if (unlikely((io_cq->head & (io_cq->q_depth - 1)) == 0)) in ena_com_cq_inc_head() 231 masked_head = io_cq->head & (io_cq->q_depth - 1); in ena_com_tx_comp_req_id_get()
|
| /dpdk/drivers/net/ice/base/ |
| H A D | ice_osdep.h | 342 #define LIST_FIRST_ENTRY(head, type, field) (type *)((head)->lh_first) argument 350 struct ice_list_head *head) in list_add_tail() argument 352 struct ice_list_entry *tail = head->lh_first; in list_add_tail() 355 LIST_INSERT_HEAD(head, entry, next); in list_add_tail() 363 #define LIST_ADD_TAIL(entry, head) list_add_tail(entry, head) argument 365 for ((pos) = (head)->lh_first ? \ 375 for ((pos) = (head)->lh_first ? \ 389 #define LIST_REPLACE_INIT(list_head, head) do { \ argument 390 (head)->lh_first = (list_head)->lh_first; \ 400 #define HLIST_FOR_EACH_ENTRY(pos, head, type, member) \ argument [all …]
|
| /dpdk/drivers/common/cpt/ |
| H A D | cpt_common.h | 41 unsigned int head; member 86 q->head = (q->head + 1) & (qsize - 1); in pending_queue_pop() 96 *rid = q->rid_queue[q->head]; in pending_queue_peek() 99 next_rid = q->rid_queue[(q->head + 1) & (qsize - 1)]; in pending_queue_peek() 107 return (q->tail - q->head) & (qsize - 1); in pending_queue_level()
|
| /dpdk/drivers/crypto/nitrox/ |
| H A D | nitrox_qp.h | 29 uint32_t head; member 82 uint32_t head = qp->head % qp->count; in nitrox_qp_enqueue() local 84 qp->head++; in nitrox_qp_enqueue() 85 memcpy(&qp->cmdq.ring[head * qp->cmdq.instr_size], in nitrox_qp_enqueue() 87 qp->ridq[head].sr = sr; in nitrox_qp_enqueue()
|
| /dpdk/doc/guides/prog_guide/ |
| H A D | stack_lib.rst | 52 list's tail to the current stack head, and using a CAS to swing the stack head 53 pointer to the head of the list. The operation retries if it is unsuccessful 54 (i.e. the list changed between reading the head and modifying it), else it 60 from the head -- then swinging the head pointer (using a CAS as well). While 78 1. Thread A reads head pointer X and stores the pointed-to list element. 79 2. Other threads modify the list such that the head pointer is once again X, 81 3. Thread A changes the head pointer with a compare-and-swap and succeeds. 84 both pop stale data and incorrect change the head pointer. By adding a 87 head pointer remains the same.
|