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

Function consume_events

dpdk/drivers/event/dpaa2/dpaa2_eventdev_selftest.c:341–378  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

339 struct rte_event *ev);
340
341static int
342consume_events(uint8_t port, const uint32_t total_events, validate_event_cb fn)
343{
344 int ret;
345 uint16_t valid_event;
346 uint32_t events = 0, forward_progress_cnt = 0, index = 0;
347 struct rte_event ev;
348
349 while (1) {
350 if (++forward_progress_cnt > UINT16_MAX) {
351 dpaa2_evdev_err("Detected deadlock");
352 return -1;
353 }
354
355 valid_event = rte_event_dequeue_burst(evdev, port, &ev, 1, 0);
356 if (!valid_event)
357 continue;
358
359 forward_progress_cnt = 0;
360 ret = validate_event(&ev);
361 if (ret)
362 return -1;
363
364 if (fn != NULL) {
365 ret = fn(index, port, &ev);
366 RTE_TEST_ASSERT_SUCCESS(ret,
367 "Failed to validate test specific event");
368 }
369
370 ++index;
371
372 rte_pktmbuf_free(ev.mbuf);
373 if (++events >= total_events)
374 break;
375 }
376
377 return check_excess_events(port);
378}
379
380static int
381validate_simple_enqdeq(uint32_t index, uint8_t port, struct rte_event *ev)

Calls 4

rte_event_dequeue_burstFunction · 0.85
rte_pktmbuf_freeFunction · 0.85
validate_eventFunction · 0.70
check_excess_eventsFunction · 0.70

Tested by

no test coverage detected