[dpdk-dev] [PATCH v6 14/23] eventtimer: add event timer initializer function

Erik Gabriel Carrillo erik.g.carrillo at intel.com
Thu Jan 11 01:21:05 CET 2018


Add a function that can be used to initialize event timers so that they
are in a known state before being used for arm or cancel operations.

Signed-off-by: Erik Gabriel Carrillo <erik.g.carrillo at intel.com>
---
 lib/librte_eventdev/rte_event_timer_adapter.c |  8 ++++++++
 lib/librte_eventdev/rte_event_timer_adapter.h | 11 +++++++++++
 lib/librte_eventdev/rte_eventdev_version.map  |  1 +
 3 files changed, 20 insertions(+)

diff --git a/lib/librte_eventdev/rte_event_timer_adapter.c b/lib/librte_eventdev/rte_event_timer_adapter.c
index 0266ad5..8bd9ebc 100644
--- a/lib/librte_eventdev/rte_event_timer_adapter.c
+++ b/lib/librte_eventdev/rte_event_timer_adapter.c
@@ -396,6 +396,14 @@ rte_event_timer_adapter_service_id_get(struct rte_event_timer_adapter *adapter,
 	return -ESRCH;
 }
 
+void
+rte_event_timer_init(struct rte_event_timer *evtim)
+{
+	evtim->ev.op = RTE_EVENT_OP_NEW;
+	evtim->ev.event_type = RTE_EVENT_TYPE_TIMER;
+	evtim->state = RTE_EVENT_TIMER_NOT_ARMED;
+}
+
 int
 rte_event_timer_arm_burst(const struct rte_event_timer_adapter *adapter,
 			  struct rte_event_timer **evtims,
diff --git a/lib/librte_eventdev/rte_event_timer_adapter.h b/lib/librte_eventdev/rte_event_timer_adapter.h
index bbbe7b9..3488488 100644
--- a/lib/librte_eventdev/rte_event_timer_adapter.h
+++ b/lib/librte_eventdev/rte_event_timer_adapter.h
@@ -484,6 +484,17 @@ struct rte_event_timer {
  * @warning
  * @b EXPERIMENTAL: this API may change without prior notice
  *
+ * Set an event timer's initial state and initialize the event it carries.
+ *
+ * @param evtim
+ *   A pointer to an event timer structure.
+ */
+void rte_event_timer_init(struct rte_event_timer *evtim);
+
+/**
+ * @warning
+ * @b EXPERIMENTAL: this API may change without prior notice
+ *
  * Arm a burst of event timers with separate expiration timeout tick for each
  * event timer.
  *
diff --git a/lib/librte_eventdev/rte_eventdev_version.map b/lib/librte_eventdev/rte_eventdev_version.map
index a35a668..c4bc946 100644
--- a/lib/librte_eventdev/rte_eventdev_version.map
+++ b/lib/librte_eventdev/rte_eventdev_version.map
@@ -78,6 +78,7 @@ DPDK_18.02 {
 	rte_event_timer_adapter_service_id_get;
 	rte_event_timer_adapter_start;
 	rte_event_timer_adapter_stop;
+	rte_event_timer_init;
 	rte_event_timer_arm_burst;
 	rte_event_timer_arm_tmo_tick_burst;
 	rte_event_timer_cancel_burst;
-- 
2.6.4



More information about the dev mailing list