[dpdk-dev] [PATCH 01/39] eventdev: update PMD dequeue timeout conversion callback
Jerin Jacob
jerin.jacob at caviumnetworks.com
Fri Mar 3 18:27:43 CET 2017
eventdev driver may return error on dequeue timeout tick conversion.
Change the pmd callback interface to address the same.
Signed-off-by: Jerin Jacob <jerin.jacob at caviumnetworks.com>
---
drivers/event/skeleton/skeleton_eventdev.c | 4 +++-
lib/librte_eventdev/rte_eventdev.c | 3 +--
lib/librte_eventdev/rte_eventdev_pmd.h | 5 ++++-
3 files changed, 8 insertions(+), 4 deletions(-)
diff --git a/drivers/event/skeleton/skeleton_eventdev.c b/drivers/event/skeleton/skeleton_eventdev.c
index dee0faf..05ec58b 100644
--- a/drivers/event/skeleton/skeleton_eventdev.c
+++ b/drivers/event/skeleton/skeleton_eventdev.c
@@ -319,7 +319,7 @@ skeleton_eventdev_port_unlink(struct rte_eventdev *dev, void *port,
}
-static void
+static int
skeleton_eventdev_timeout_ticks(struct rte_eventdev *dev, uint64_t ns,
uint64_t *timeout_ticks)
{
@@ -330,6 +330,8 @@ skeleton_eventdev_timeout_ticks(struct rte_eventdev *dev, uint64_t ns,
RTE_SET_USED(skel);
*timeout_ticks = ns * scale;
+
+ return 0;
}
static void
diff --git a/lib/librte_eventdev/rte_eventdev.c b/lib/librte_eventdev/rte_eventdev.c
index 68bfc3b..178bdcf 100644
--- a/lib/librte_eventdev/rte_eventdev.c
+++ b/lib/librte_eventdev/rte_eventdev.c
@@ -902,8 +902,7 @@ rte_event_dequeue_timeout_ticks(uint8_t dev_id, uint64_t ns,
if (timeout_ticks == NULL)
return -EINVAL;
- (*dev->dev_ops->timeout_ticks)(dev, ns, timeout_ticks);
- return 0;
+ return (*dev->dev_ops->timeout_ticks)(dev, ns, timeout_ticks);
}
int
diff --git a/lib/librte_eventdev/rte_eventdev_pmd.h b/lib/librte_eventdev/rte_eventdev_pmd.h
index 828dfce..45ac8ea 100644
--- a/lib/librte_eventdev/rte_eventdev_pmd.h
+++ b/lib/librte_eventdev/rte_eventdev_pmd.h
@@ -406,8 +406,11 @@ typedef int (*eventdev_port_unlink_t)(struct rte_eventdev *dev, void *port,
* @param[out] timeout_ticks
* Value for the *timeout_ticks* parameter in rte_event_dequeue() function
*
+ * @return
+ * Returns 0 on success.
+ *
*/
-typedef void (*eventdev_dequeue_timeout_ticks_t)(struct rte_eventdev *dev,
+typedef int (*eventdev_dequeue_timeout_ticks_t)(struct rte_eventdev *dev,
uint64_t ns, uint64_t *timeout_ticks);
/**
--
2.5.5
More information about the dev
mailing list