MCPcopy Create free account
hub / github.com/F-Stack/f-stack / rte_node_enqueue

Function rte_node_enqueue

dpdk/lib/graph/rte_graph_worker_common.h:285–296  ·  view source on GitHub ↗

* Enqueue the objs to next node for further processing and set * the next node to pending state in the circular buffer. * * @param graph * Graph pointer returned from rte_graph_lookup(). * @param node * Current node pointer. * @param next * Relative next node index to enqueue objs. * @param objs * Objs to enqueue. * @param nb_objs * Number of objs to enqueue. */

Source from the content-addressed store, hash-verified

283 * Number of objs to enqueue.
284 */
285static inline void
286rte_node_enqueue(struct rte_graph *graph, struct rte_node *node,
287 rte_edge_t next, void **objs, uint16_t nb_objs)
288{
289 node = __rte_node_next_node_get(node, next);
290 const uint16_t idx = node->idx;
291
292 __rte_node_enqueue_prologue(graph, node, idx, nb_objs);
293
294 rte_memcpy(&node->objs[idx], objs, nb_objs * sizeof(void *));
295 node->idx = idx + nb_objs;
296}
297
298/**
299 * Enqueue only one obj to next node for further processing and

Callers 7

ethdev_tx_node_processFunction · 0.85
test_perf_node_workerFunction · 0.85
test_node0_workerFunction · 0.85
test_node1_workerFunction · 0.85
test_node2_workerFunction · 0.85
test_node3_workerFunction · 0.85

Calls 3

__rte_node_next_node_getFunction · 0.85
rte_memcpyFunction · 0.50

Tested by 5

test_perf_node_workerFunction · 0.68
test_node0_workerFunction · 0.68
test_node1_workerFunction · 0.68
test_node2_workerFunction · 0.68
test_node3_workerFunction · 0.68