patch 'eventdev/timer: fix timeout event wait behavior' has been queued to stable release 21.11.5

Kevin Traynor ktraynor at redhat.com
Thu Jul 20 17:17:26 CEST 2023


Hi,

FYI, your patch has been queued to stable release 21.11.5

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/25/23. So please
shout if anyone has objections.

Also note that after the patch there's a diff of the upstream commit vs the
patch applied to the branch. This will indicate if there was any rebasing
needed to apply to the stable branch. If there were code changes for rebasing
(ie: not only metadata diffs), please double check that the rebase was
correctly done.

Queued patches are on a temporary branch at:
https://github.com/kevintraynor/dpdk-stable

This queued commit can be viewed at:
https://github.com/kevintraynor/dpdk-stable/commit/84d280e276f6ffbbc821cb1e69d4ea156628933c

Thanks.

Kevin

---
>From 84d280e276f6ffbbc821cb1e69d4ea156628933c Mon Sep 17 00:00:00 2001
From: Shijith Thotton <sthotton at marvell.com>
Date: Tue, 21 Mar 2023 10:50:23 +0530
Subject: [PATCH] eventdev/timer: fix timeout event wait behavior

[ upstream commit fb9c213317b5e07918c9306f2036f8cc07126a85 ]

Improved the accuracy and consistency of timeout event wait behavior by
refactoring it. Previously, the delay function used for waiting could be
inaccurate, leading to inconsistent results. This commit updates the
wait behavior to use a timeout-based approach, enabling the wait for the
exact number of timer ticks before proceeding.

The new function timeout_event_dequeue mimics the behavior of the tested
systems closely. It dequeues timer expiry events until either the
expected number of events have been dequeued or the specified time has
elapsed. The WAIT_TICKS macro defines the waiting behavior based on the
type of timer being used (software or hardware).

Fixes: d1f3385d0076 ("test: add event timer adapter auto-test")

Signed-off-by: Shijith Thotton <sthotton at marvell.com>
Acked-by: Erik Gabriel Carrillo <erik.g.carrillo at intel.com>
---
 app/test/test_event_timer_adapter.c | 165 +++++++++++-----------------
 1 file changed, 67 insertions(+), 98 deletions(-)

diff --git a/app/test/test_event_timer_adapter.c b/app/test/test_event_timer_adapter.c
index dfec499d60..3ded1c1efa 100644
--- a/app/test/test_event_timer_adapter.c
+++ b/app/test/test_event_timer_adapter.c
@@ -47,7 +47,8 @@ static uint64_t global_info_bkt_tck_ns;
 static volatile uint8_t arm_done;
 
-#define CALC_TICKS(tks)					\
-	ceil((double)(tks * global_bkt_tck_ns) / global_info_bkt_tck_ns)
+#define CALC_TICKS(tks) ceil((double)((tks) * global_bkt_tck_ns) / global_info_bkt_tck_ns)
 
+/* Wait double timeout ticks for software and an extra tick for hardware */
+#define WAIT_TICKS(tks) (using_services ? 2 * (tks) : tks + 1)
 
 static bool using_services;
@@ -420,8 +421,29 @@ timdev_teardown(void)
 }
 
+static inline uint16_t
+timeout_event_dequeue(struct rte_event *evs, uint64_t nb_evs, uint64_t ticks)
+{
+	uint16_t ev_cnt = 0;
+	uint64_t end_cycle;
+
+	if (using_services && nb_evs == MAX_TIMERS)
+		ticks = 2 * ticks;
+
+	end_cycle = rte_rdtsc() + ticks * global_bkt_tck_ns * rte_get_tsc_hz() / 1E9;
+
+	while (ev_cnt < nb_evs && rte_rdtsc() < end_cycle) {
+		ev_cnt += rte_event_dequeue_burst(evdev, TEST_PORT_ID, &evs[ev_cnt], nb_evs, 0);
+		rte_pause();
+	}
+
+	return ev_cnt;
+}
+
 static inline int
 test_timer_state(void)
 {
 	struct rte_event_timer *ev_tim;
+	const uint64_t max_ticks = 100;
+	uint64_t ticks, wait_ticks;
 	struct rte_event ev;
 	const struct rte_event_timer tim = {
@@ -434,9 +456,8 @@ test_timer_state(void)
 	};
 
-
 	rte_mempool_get(eventdev_test_mempool, (void **)&ev_tim);
 	*ev_tim = tim;
 	ev_tim->ev.event_ptr = ev_tim;
-	ev_tim->timeout_ticks = CALC_TICKS(120);
+	ev_tim->timeout_ticks = CALC_TICKS(max_ticks + 20);
 
 	TEST_ASSERT_EQUAL(rte_event_timer_arm_burst(timdev, &ev_tim, 1), 0,
@@ -446,6 +467,7 @@ test_timer_state(void)
 			RTE_EVENT_TIMER_ERROR_TOOLATE, ev_tim->state);
 
+	ticks = 10;
 	ev_tim->state = RTE_EVENT_TIMER_NOT_ARMED;
-	ev_tim->timeout_ticks = CALC_TICKS(10);
+	ev_tim->timeout_ticks = CALC_TICKS(ticks);
 
 	TEST_ASSERT_EQUAL(rte_event_timer_arm_burst(timdev, &ev_tim, 1), 1,
@@ -456,12 +478,13 @@ test_timer_state(void)
 
 	if (!using_services)
-		rte_delay_us(20);
+		wait_ticks = 2 * ticks;
 	else
-		rte_delay_us(1000 + 200);
-	TEST_ASSERT_EQUAL(rte_event_dequeue_burst(evdev, 0, &ev, 1, 0), 1,
-			"Armed timer failed to trigger.");
+		wait_ticks = ticks;
+
+	TEST_ASSERT_EQUAL(timeout_event_dequeue(&ev, 1, WAIT_TICKS(wait_ticks)), 1,
+			  "Armed timer failed to trigger.");
 
 	ev_tim->state = RTE_EVENT_TIMER_NOT_ARMED;
-	ev_tim->timeout_ticks = CALC_TICKS(90);
+	ev_tim->timeout_ticks = CALC_TICKS(max_ticks - 10);
 	TEST_ASSERT_EQUAL(rte_event_timer_arm_burst(timdev, &ev_tim, 1), 1,
 			"Failed to arm timer with proper timeout.");
@@ -1165,6 +1188,7 @@ stat_inc_reset_ev_enq(void)
 	int num_evtims = MAX_TIMERS;
 	struct rte_event_timer *evtims[num_evtims];
-	struct rte_event evs[BATCH_SIZE];
+	struct rte_event evs[num_evtims];
 	struct rte_event_timer_adapter_stats stats;
+	uint64_t ticks = 5;
 	const struct rte_event_timer init_tim = {
 		.ev.op = RTE_EVENT_OP_NEW,
@@ -1174,5 +1198,5 @@ stat_inc_reset_ev_enq(void)
 		.ev.event_type =  RTE_EVENT_TYPE_TIMER,
 		.state = RTE_EVENT_TIMER_NOT_ARMED,
-		.timeout_ticks = CALC_TICKS(5), // expire in .5 sec
+		.timeout_ticks = CALC_TICKS(ticks), /**< expire in .5 sec */
 	};
 
@@ -1199,29 +1223,10 @@ stat_inc_reset_ev_enq(void)
 			  num_evtims, ret, rte_strerror(rte_errno));
 
-	rte_delay_ms(1000);
-
-#define MAX_TRIES num_evtims
-	int sum = 0;
-	int tries = 0;
-	bool done = false;
-	while (!done) {
-		sum += rte_event_dequeue_burst(evdev, TEST_PORT_ID, evs,
-					       RTE_DIM(evs), 10);
-		if (sum >= num_evtims || ++tries >= MAX_TRIES)
-			done = true;
-
-		rte_delay_ms(10);
-	}
-
-	TEST_ASSERT_EQUAL(sum, num_evtims, "Expected %d timer expiry events, "
-			  "got %d", num_evtims, sum);
-
-	TEST_ASSERT(tries < MAX_TRIES, "Exceeded max tries");
-
-	rte_delay_ms(100);
+	n = timeout_event_dequeue(evs, RTE_DIM(evs), WAIT_TICKS(ticks));
+	TEST_ASSERT_EQUAL(n, num_evtims, "Expected %d timer expiry events, got %d",
+			  num_evtims, n);
 
 	/* Make sure the eventdev is still empty */
-	n = rte_event_dequeue_burst(evdev, TEST_PORT_ID, evs, RTE_DIM(evs),
-				      10);
+	n = timeout_event_dequeue(evs, 1, WAIT_TICKS(1));
 
 	TEST_ASSERT_EQUAL(n, 0, "Dequeued unexpected number of timer expiry "
@@ -1260,4 +1265,5 @@ event_timer_arm(void)
 	struct rte_event_timer *evtim = NULL;
 	struct rte_event evs[BATCH_SIZE];
+	uint64_t ticks = 5;
 	const struct rte_event_timer init_tim = {
 		.ev.op = RTE_EVENT_OP_NEW,
@@ -1267,5 +1273,5 @@ event_timer_arm(void)
 		.ev.event_type =  RTE_EVENT_TYPE_TIMER,
 		.state = RTE_EVENT_TIMER_NOT_ARMED,
-		.timeout_ticks = CALC_TICKS(5), // expire in .5 sec
+		.timeout_ticks = CALC_TICKS(ticks), /**< expire in .5 sec */
 	};
 
@@ -1294,8 +1300,5 @@ event_timer_arm(void)
 			  "after arming already armed timer");
 
-	/* Let timer expire */
-	rte_delay_ms(1000);
-
-	n = rte_event_dequeue_burst(evdev, TEST_PORT_ID, evs, RTE_DIM(evs), 0);
+	n = timeout_event_dequeue(evs, RTE_DIM(evs), WAIT_TICKS(ticks));
 	TEST_ASSERT_EQUAL(n, 1, "Failed to dequeue expected number of expiry "
 			  "events from event device");
@@ -1317,4 +1320,5 @@ event_timer_arm_double(void)
 	struct rte_event_timer *evtim = NULL;
 	struct rte_event evs[BATCH_SIZE];
+	uint64_t ticks = 5;
 	const struct rte_event_timer init_tim = {
 		.ev.op = RTE_EVENT_OP_NEW,
@@ -1324,5 +1328,5 @@ event_timer_arm_double(void)
 		.ev.event_type =  RTE_EVENT_TYPE_TIMER,
 		.state = RTE_EVENT_TIMER_NOT_ARMED,
-		.timeout_ticks = CALC_TICKS(5), // expire in .5 sec
+		.timeout_ticks = CALC_TICKS(ticks), /**< expire in .5 sec */
 	};
 
@@ -1344,8 +1348,5 @@ event_timer_arm_double(void)
 			  "after double-arm");
 
-	/* Let timer expire */
-	rte_delay_ms(600);
-
-	n = rte_event_dequeue_burst(evdev, TEST_PORT_ID, evs, RTE_DIM(evs), 0);
+	n = timeout_event_dequeue(evs, RTE_DIM(evs), WAIT_TICKS(ticks));
 	TEST_ASSERT_EQUAL(n, 1, "Dequeued incorrect number of expiry events - "
 			  "expected: 1, actual: %d", n);
@@ -1374,4 +1375,5 @@ event_timer_arm_expiry(void)
 		.state = RTE_EVENT_TIMER_NOT_ARMED,
 	};
+	uint64_t ticks = 30;
 
 	rte_mempool_get(eventdev_test_mempool, (void **)&evtim);
@@ -1383,5 +1385,5 @@ event_timer_arm_expiry(void)
 	/* Set up an event timer */
 	*evtim = init_tim;
-	evtim->timeout_ticks = CALC_TICKS(30),	// expire in 3 secs
+	evtim->timeout_ticks = CALC_TICKS(ticks); /**< expire in 3 secs */
 	evtim->ev.event_ptr = evtim;
 
@@ -1392,15 +1394,8 @@ event_timer_arm_expiry(void)
 			  "timer in incorrect state");
 
-	rte_delay_ms(2999);
-
-	n = rte_event_dequeue_burst(evdev, TEST_PORT_ID, evs, RTE_DIM(evs), 0);
+	n = timeout_event_dequeue(evs, RTE_DIM(evs), ticks - 1);
 	TEST_ASSERT_EQUAL(n, 0, "Dequeued unexpected timer expiry event");
 
-	/* Delay 100 ms to account for the adapter tick window - should let us
-	 * dequeue one event
-	 */
-	rte_delay_ms(100);
-
-	n = rte_event_dequeue_burst(evdev, TEST_PORT_ID, evs, RTE_DIM(evs), 0);
+	n = timeout_event_dequeue(evs, RTE_DIM(evs), WAIT_TICKS(1));
 	TEST_ASSERT_EQUAL(n, 1, "Dequeued incorrect number (%d) of timer "
 			  "expiry events", n);
@@ -1434,4 +1429,5 @@ event_timer_arm_rearm(void)
 		.state = RTE_EVENT_TIMER_NOT_ARMED,
 	};
+	uint64_t ticks = 1;
 
 	rte_mempool_get(eventdev_test_mempool, (void **)&evtim);
@@ -1443,5 +1439,5 @@ event_timer_arm_rearm(void)
 	/* Set up a timer */
 	*evtim = init_tim;
-	evtim->timeout_ticks = CALC_TICKS(1);  // expire in 0.1 sec
+	evtim->timeout_ticks = CALC_TICKS(ticks); /**< expire in 0.1 sec */
 	evtim->ev.event_ptr = evtim;
 
@@ -1451,8 +1447,5 @@ event_timer_arm_rearm(void)
 			  rte_strerror(rte_errno));
 
-	/* Add 100ms to account for the adapter tick window */
-	rte_delay_ms(100 + 100);
-
-	n = rte_event_dequeue_burst(evdev, TEST_PORT_ID, evs, RTE_DIM(evs), 0);
+	n = timeout_event_dequeue(evs, RTE_DIM(evs), WAIT_TICKS(ticks));
 	TEST_ASSERT_EQUAL(n, 1, "Failed to dequeue expected number of expiry "
 			  "events from event device");
@@ -1471,8 +1464,5 @@ event_timer_arm_rearm(void)
 			  rte_strerror(rte_errno));
 
-	/* Add 100ms to account for the adapter tick window */
-	rte_delay_ms(100 + 100);
-
-	n = rte_event_dequeue_burst(evdev, TEST_PORT_ID, evs, RTE_DIM(evs), 0);
+	n = timeout_event_dequeue(evs, RTE_DIM(evs), WAIT_TICKS(ticks));
 	TEST_ASSERT_EQUAL(n, 1, "Failed to dequeue expected number of expiry "
 			  "events from event device");
@@ -1496,5 +1486,6 @@ event_timer_arm_max(void)
 	int num_evtims = MAX_TIMERS;
 	struct rte_event_timer *evtims[num_evtims];
-	struct rte_event evs[BATCH_SIZE];
+	struct rte_event evs[num_evtims];
+	uint64_t ticks = 5;
 	const struct rte_event_timer init_tim = {
 		.ev.op = RTE_EVENT_OP_NEW,
@@ -1504,5 +1495,5 @@ event_timer_arm_max(void)
 		.ev.event_type =  RTE_EVENT_TYPE_TIMER,
 		.state = RTE_EVENT_TIMER_NOT_ARMED,
-		.timeout_ticks = CALC_TICKS(5), // expire in .5 sec
+		.timeout_ticks = CALC_TICKS(ticks), /**< expire in .5 sec */
 	};
 
@@ -1524,29 +1515,10 @@ event_timer_arm_max(void)
 			  num_evtims, ret, rte_strerror(rte_errno));
 
-	rte_delay_ms(1000);
-
-#define MAX_TRIES num_evtims
-	int sum = 0;
-	int tries = 0;
-	bool done = false;
-	while (!done) {
-		sum += rte_event_dequeue_burst(evdev, TEST_PORT_ID, evs,
-					       RTE_DIM(evs), 10);
-		if (sum >= num_evtims || ++tries >= MAX_TRIES)
-			done = true;
-
-		rte_delay_ms(10);
-	}
-
-	TEST_ASSERT_EQUAL(sum, num_evtims, "Expected %d timer expiry events, "
-			  "got %d", num_evtims, sum);
-
-	TEST_ASSERT(tries < MAX_TRIES, "Exceeded max tries");
-
-	rte_delay_ms(100);
+	n = timeout_event_dequeue(evs, RTE_DIM(evs), WAIT_TICKS(ticks));
+	TEST_ASSERT_EQUAL(n, num_evtims, "Expected %d timer expiry events, got %d",
+			  num_evtims, n);
 
 	/* Make sure the eventdev is still empty */
-	n = rte_event_dequeue_burst(evdev, TEST_PORT_ID, evs, RTE_DIM(evs),
-				    10);
+	n = timeout_event_dequeue(evs, 1, WAIT_TICKS(1));
 
 	TEST_ASSERT_EQUAL(n, 0, "Dequeued unexpected number of timer expiry "
@@ -1668,4 +1640,5 @@ event_timer_cancel(void)
 		.state = RTE_EVENT_TIMER_NOT_ARMED,
 	};
+	uint64_t ticks = 30;
 
 	rte_mempool_get(eventdev_test_mempool, (void **)&evtim);
@@ -1685,5 +1658,5 @@ event_timer_cancel(void)
 	*evtim = init_tim;
 	evtim->ev.event_ptr = evtim;
-	evtim->timeout_ticks = CALC_TICKS(30);  // expire in 3 sec
+	evtim->timeout_ticks = CALC_TICKS(ticks); /**< expire in 3 sec */
 
 	/* Check that cancelling an inited but unarmed timer fails */
@@ -1709,8 +1682,6 @@ event_timer_cancel(void)
 			  "evtim in incorrect state");
 
-	rte_delay_ms(3000);
-
 	/* Make sure that no expiry event was generated */
-	n = rte_event_dequeue_burst(evdev, TEST_PORT_ID, evs, RTE_DIM(evs), 0);
+	n = timeout_event_dequeue(evs, RTE_DIM(evs), WAIT_TICKS(ticks));
 	TEST_ASSERT_EQUAL(n, 0, "Dequeued unexpected timer expiry event\n");
 
@@ -1735,6 +1706,6 @@ event_timer_cancel_double(void)
 		.ev.event_type =  RTE_EVENT_TYPE_TIMER,
 		.state = RTE_EVENT_TIMER_NOT_ARMED,
-		.timeout_ticks = CALC_TICKS(5), // expire in .5 sec
 	};
+	uint64_t ticks = 30;
 
 	rte_mempool_get(eventdev_test_mempool, (void **)&evtim);
@@ -1747,5 +1718,5 @@ event_timer_cancel_double(void)
 	*evtim = init_tim;
 	evtim->ev.event_ptr = evtim;
-	evtim->timeout_ticks = CALC_TICKS(30);  // expire in 3 sec
+	evtim->timeout_ticks = CALC_TICKS(ticks); /**< expire in 3 sec */
 
 	ret = rte_event_timer_arm_burst(adapter, &evtim, 1);
@@ -1769,8 +1740,6 @@ event_timer_cancel_double(void)
 			  "after double-cancel: rte_errno = %d", rte_errno);
 
-	rte_delay_ms(3000);
-
 	/* Still make sure that no expiry event was generated */
-	n = rte_event_dequeue_burst(evdev, TEST_PORT_ID, evs, RTE_DIM(evs), 0);
+	n = timeout_event_dequeue(evs, RTE_DIM(evs), WAIT_TICKS(ticks));
 	TEST_ASSERT_EQUAL(n, 0, "Dequeued unexpected timer expiry event\n");
 
-- 
2.41.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2023-07-20 16:17:57.045275211 +0100
+++ 0015-eventdev-timer-fix-timeout-event-wait-behavior.patch	2023-07-20 16:17:54.460749687 +0100
@@ -1 +1 @@
-From fb9c213317b5e07918c9306f2036f8cc07126a85 Mon Sep 17 00:00:00 2001
+From 84d280e276f6ffbbc821cb1e69d4ea156628933c Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit fb9c213317b5e07918c9306f2036f8cc07126a85 ]
+
@@ -19 +20,0 @@
-Cc: stable at dpdk.org
@@ -24,2 +25,2 @@
- app/test/test_event_timer_adapter.c | 169 +++++++++++-----------------
- 1 file changed, 68 insertions(+), 101 deletions(-)
+ app/test/test_event_timer_adapter.c | 165 +++++++++++-----------------
+ 1 file changed, 67 insertions(+), 98 deletions(-)
@@ -28 +29 @@
-index 5e7feec1c7..510bebcf86 100644
+index dfec499d60..3ded1c1efa 100644
@@ -31 +32 @@
-@@ -58,7 +58,8 @@ static uint64_t global_info_bkt_tck_ns;
+@@ -47,7 +47,8 @@ static uint64_t global_info_bkt_tck_ns;
@@ -42 +43 @@
-@@ -442,8 +443,29 @@ timdev_teardown(void)
+@@ -420,8 +421,29 @@ timdev_teardown(void)
@@ -72 +73 @@
-@@ -456,9 +478,8 @@ test_timer_state(void)
+@@ -434,9 +456,8 @@ test_timer_state(void)
@@ -83 +84 @@
-@@ -468,6 +489,7 @@ test_timer_state(void)
+@@ -446,6 +467,7 @@ test_timer_state(void)
@@ -92 +93 @@
-@@ -478,12 +500,13 @@ test_timer_state(void)
+@@ -456,12 +478,13 @@ test_timer_state(void)
@@ -111 +112 @@
-@@ -1209,6 +1232,7 @@ stat_inc_reset_ev_enq(void)
+@@ -1165,6 +1188,7 @@ stat_inc_reset_ev_enq(void)
@@ -120 +121 @@
-@@ -1218,5 +1242,5 @@ stat_inc_reset_ev_enq(void)
+@@ -1174,5 +1198,5 @@ stat_inc_reset_ev_enq(void)
@@ -127 +128 @@
-@@ -1243,29 +1267,10 @@ stat_inc_reset_ev_enq(void)
+@@ -1199,29 +1223,10 @@ stat_inc_reset_ev_enq(void)
@@ -161 +162 @@
-@@ -1304,4 +1309,5 @@ event_timer_arm(void)
+@@ -1260,4 +1265,5 @@ event_timer_arm(void)
@@ -167 +168 @@
-@@ -1311,5 +1317,5 @@ event_timer_arm(void)
+@@ -1267,5 +1273,5 @@ event_timer_arm(void)
@@ -174 +175 @@
-@@ -1338,8 +1344,5 @@ event_timer_arm(void)
+@@ -1294,8 +1300,5 @@ event_timer_arm(void)
@@ -184 +185 @@
-@@ -1361,4 +1364,5 @@ event_timer_arm_double(void)
+@@ -1317,4 +1320,5 @@ event_timer_arm_double(void)
@@ -190 +191 @@
-@@ -1368,5 +1372,5 @@ event_timer_arm_double(void)
+@@ -1324,5 +1328,5 @@ event_timer_arm_double(void)
@@ -197 +198 @@
-@@ -1388,8 +1392,5 @@ event_timer_arm_double(void)
+@@ -1344,8 +1348,5 @@ event_timer_arm_double(void)
@@ -207 +208 @@
-@@ -1418,4 +1419,5 @@ event_timer_arm_expiry(void)
+@@ -1374,4 +1375,5 @@ event_timer_arm_expiry(void)
@@ -213 +214 @@
-@@ -1427,5 +1429,5 @@ event_timer_arm_expiry(void)
+@@ -1383,5 +1385,5 @@ event_timer_arm_expiry(void)
@@ -220 +221 @@
-@@ -1436,15 +1438,8 @@ event_timer_arm_expiry(void)
+@@ -1392,15 +1394,8 @@ event_timer_arm_expiry(void)
@@ -238 +239 @@
-@@ -1478,4 +1473,5 @@ event_timer_arm_rearm(void)
+@@ -1434,4 +1429,5 @@ event_timer_arm_rearm(void)
@@ -244 +245 @@
-@@ -1487,5 +1483,5 @@ event_timer_arm_rearm(void)
+@@ -1443,5 +1439,5 @@ event_timer_arm_rearm(void)
@@ -251 +252 @@
-@@ -1495,8 +1491,5 @@ event_timer_arm_rearm(void)
+@@ -1451,8 +1447,5 @@ event_timer_arm_rearm(void)
@@ -261 +262 @@
-@@ -1515,8 +1508,5 @@ event_timer_arm_rearm(void)
+@@ -1471,8 +1464,5 @@ event_timer_arm_rearm(void)
@@ -271 +272 @@
-@@ -1540,5 +1530,6 @@ event_timer_arm_max(void)
+@@ -1496,5 +1486,6 @@ event_timer_arm_max(void)
@@ -279 +280 @@
-@@ -1548,5 +1539,5 @@ event_timer_arm_max(void)
+@@ -1504,5 +1495,5 @@ event_timer_arm_max(void)
@@ -286 +287 @@
-@@ -1568,29 +1559,10 @@ event_timer_arm_max(void)
+@@ -1524,29 +1515,10 @@ event_timer_arm_max(void)
@@ -320 +321 @@
-@@ -1712,4 +1684,5 @@ event_timer_cancel(void)
+@@ -1668,4 +1640,5 @@ event_timer_cancel(void)
@@ -326 +327 @@
-@@ -1729,5 +1702,5 @@ event_timer_cancel(void)
+@@ -1685,5 +1658,5 @@ event_timer_cancel(void)
@@ -333 +334 @@
-@@ -1753,8 +1726,6 @@ event_timer_cancel(void)
+@@ -1709,8 +1682,6 @@ event_timer_cancel(void)
@@ -343 +344 @@
-@@ -1779,6 +1750,6 @@ event_timer_cancel_double(void)
+@@ -1735,6 +1706,6 @@ event_timer_cancel_double(void)
@@ -351 +352 @@
-@@ -1791,5 +1762,5 @@ event_timer_cancel_double(void)
+@@ -1747,5 +1718,5 @@ event_timer_cancel_double(void)
@@ -358 +359 @@
-@@ -1813,8 +1784,6 @@ event_timer_cancel_double(void)
+@@ -1769,8 +1740,6 @@ event_timer_cancel_double(void)
@@ -368,9 +368,0 @@
-@@ -1974,7 +1943,5 @@ test_timer_ticks_remaining(void)
- 	}
- 
--	rte_delay_ms(100);
--
--	TEST_ASSERT_EQUAL(rte_event_dequeue_burst(evdev, 0, &ev, 1, 0), 1,
-+	TEST_ASSERT_EQUAL(timeout_event_dequeue(&ev, 1, WAIT_TICKS(1)), 1,
- 			  "Armed timer failed to trigger.");
- 	TEST_ASSERT_EQUAL(ev_tim->state, RTE_EVENT_TIMER_NOT_ARMED,



More information about the stable mailing list