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

Function iq_enqueue

dpdk/drivers/event/sw/iq_chunk.h:66–82  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

64}
65
66static __rte_always_inline void
67iq_enqueue(struct sw_evdev *sw, struct sw_iq *iq, const struct rte_event *ev)
68{
69 iq->tail->events[iq->tail_idx++] = *ev;
70 iq->count++;
71
72 if (unlikely(iq->tail_idx == SW_EVS_PER_Q_CHUNK)) {
73 /* The number of chunks is defined in relation to the total
74 * number of inflight events and number of IQS such that
75 * allocation will always succeed.
76 */
77 struct sw_queue_chunk *chunk = iq_alloc_chunk(sw);
78 iq->tail->next = chunk;
79 iq->tail = chunk;
80 iq->tail_idx = 0;
81 }
82}
83
84static __rte_always_inline void
85iq_pop(struct sw_evdev *sw, struct sw_iq *iq)

Callers 3

sw_schedule_reorderFunction · 0.85
__pull_port_lbFunction · 0.85

Calls 1

iq_alloc_chunkFunction · 0.85

Tested by

no test coverage detected