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

Function event_timer_cancel

dpdk/app/test/test_event_timer_adapter.c:1670–1735  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1668}
1669
1670static int
1671event_timer_cancel(void)
1672{
1673 uint16_t n;
1674 int ret;
1675 struct rte_event_timer_adapter *adapter = timdev;
1676 struct rte_event_timer *evtim = NULL;
1677 struct rte_event evs[BATCH_SIZE];
1678 const struct rte_event_timer init_tim = {
1679 .ev.op = RTE_EVENT_OP_NEW,
1680 .ev.queue_id = TEST_QUEUE_ID,
1681 .ev.sched_type = RTE_SCHED_TYPE_ATOMIC,
1682 .ev.priority = RTE_EVENT_DEV_PRIORITY_NORMAL,
1683 .ev.event_type = RTE_EVENT_TYPE_TIMER,
1684 .state = RTE_EVENT_TIMER_NOT_ARMED,
1685 };
1686 uint64_t ticks = 30;
1687
1688 rte_mempool_get(eventdev_test_mempool, (void **)&evtim);
1689 if (evtim == NULL) {
1690 /* Failed to get an event timer object */
1691 return TEST_FAILED;
1692 }
1693
1694 /* Check that cancelling an uninited timer fails */
1695 ret = rte_event_timer_cancel_burst(adapter, &evtim, 1);
1696 TEST_ASSERT_EQUAL(ret, 0, "Succeeded unexpectedly in canceling "
1697 "uninited timer");
1698 TEST_ASSERT_EQUAL(rte_errno, EINVAL, "Unexpected rte_errno value after "
1699 "cancelling uninited timer");
1700
1701 /* Set up a timer */
1702 *evtim = init_tim;
1703 evtim->ev.event_ptr = evtim;
1704 evtim->timeout_ticks = CALC_TICKS(ticks); /**< expire in 3 sec */
1705
1706 /* Check that cancelling an inited but unarmed timer fails */
1707 ret = rte_event_timer_cancel_burst(adapter, &evtim, 1);
1708 TEST_ASSERT_EQUAL(ret, 0, "Succeeded unexpectedly in canceling "
1709 "unarmed timer");
1710 TEST_ASSERT_EQUAL(rte_errno, EINVAL, "Unexpected rte_errno value after "
1711 "cancelling unarmed timer");
1712
1713 ret = rte_event_timer_arm_burst(adapter, &evtim, 1);
1714 TEST_ASSERT_EQUAL(ret, 1, "Failed to arm event timer: %s\n",
1715 rte_strerror(rte_errno));
1716 TEST_ASSERT_EQUAL(evtim->state, RTE_EVENT_TIMER_ARMED,
1717 "evtim in incorrect state");
1718
1719 /* Delay 1 sec */
1720 rte_delay_ms(1000);
1721
1722 ret = rte_event_timer_cancel_burst(adapter, &evtim, 1);
1723 TEST_ASSERT_EQUAL(ret, 1, "Failed to cancel event_timer: %s\n",
1724 rte_strerror(rte_errno));
1725 TEST_ASSERT_EQUAL(evtim->state, RTE_EVENT_TIMER_CANCELED,
1726 "evtim in incorrect state");
1727

Callers

nothing calls this directly

Calls 7

rte_mempool_getFunction · 0.85
rte_strerrorFunction · 0.85
rte_delay_msFunction · 0.85
timeout_event_dequeueFunction · 0.85
rte_mempool_putFunction · 0.85

Tested by

no test coverage detected