aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatias Elo <matias.elo@nokia.com>2018-09-10 16:45:53 +0300
committerMatias Elo <matias.elo@nokia.com>2018-09-10 16:45:53 +0300
commitbe628dda790280dc9a4a8e3f0b9c96694f1a13c6 (patch)
tree0c2fc9b0f9c0eeb9fb83bf47a0a8cbe89a42c05f
parentd064aa0b904a09339dd5b92881fed051719feb41 (diff)
Port c9f834ad "linux-gen: queue: inline enq and deq functions"
Signed-off-by: Matias Elo <matias.elo@nokia.com>
-rw-r--r--platform/linux-dpdk/odp_queue_basic.c2
-rw-r--r--platform/linux-dpdk/odp_queue_if.c52
2 files changed, 17 insertions, 37 deletions
diff --git a/platform/linux-dpdk/odp_queue_basic.c b/platform/linux-dpdk/odp_queue_basic.c
index 2a33e1942..420393086 100644
--- a/platform/linux-dpdk/odp_queue_basic.c
+++ b/platform/linux-dpdk/odp_queue_basic.c
@@ -879,7 +879,7 @@ static odp_queue_t queue_to_ext(void *q_int)
}
/* API functions */
-queue_api_t queue_basic_api = {
+_odp_queue_api_fn_t queue_basic_api = {
.queue_create = queue_create,
.queue_destroy = queue_destroy,
.queue_lookup = queue_lookup,
diff --git a/platform/linux-dpdk/odp_queue_if.c b/platform/linux-dpdk/odp_queue_if.c
index bb9a8e1d0..3095faaee 100644
--- a/platform/linux-dpdk/odp_queue_if.c
+++ b/platform/linux-dpdk/odp_queue_if.c
@@ -19,98 +19,78 @@
#include <odp/visibility_begin.h>
_odp_queue_inline_offset_t ODP_ALIGNED_CACHE _odp_queue_inline_offset;
+const _odp_queue_api_fn_t *_odp_queue_api;
#include <odp/visibility_end.h>
-extern const queue_api_t queue_basic_api;
+extern const _odp_queue_api_fn_t queue_basic_api;
extern const queue_fn_t queue_basic_fn;
-const queue_api_t *queue_api;
const queue_fn_t *queue_fn;
odp_queue_t odp_queue_create(const char *name, const odp_queue_param_t *param)
{
- return queue_api->queue_create(name, param);
+ return _odp_queue_api->queue_create(name, param);
}
int odp_queue_destroy(odp_queue_t queue)
{
- return queue_api->queue_destroy(queue);
+ return _odp_queue_api->queue_destroy(queue);
}
odp_queue_t odp_queue_lookup(const char *name)
{
- return queue_api->queue_lookup(name);
+ return _odp_queue_api->queue_lookup(name);
}
int odp_queue_capability(odp_queue_capability_t *capa)
{
- return queue_api->queue_capability(capa);
+ return _odp_queue_api->queue_capability(capa);
}
int odp_queue_context_set(odp_queue_t queue, void *context, uint32_t len)
{
- return queue_api->queue_context_set(queue, context, len);
-}
-
-int odp_queue_enq(odp_queue_t queue, odp_event_t ev)
-{
- return queue_api->queue_enq(queue, ev);
-}
-
-int odp_queue_enq_multi(odp_queue_t queue, const odp_event_t events[], int num)
-{
- return queue_api->queue_enq_multi(queue, events, num);
-}
-
-odp_event_t odp_queue_deq(odp_queue_t queue)
-{
- return queue_api->queue_deq(queue);
-}
-
-int odp_queue_deq_multi(odp_queue_t queue, odp_event_t events[], int num)
-{
- return queue_api->queue_deq_multi(queue, events, num);
+ return _odp_queue_api->queue_context_set(queue, context, len);
}
odp_queue_type_t odp_queue_type(odp_queue_t queue)
{
- return queue_api->queue_type(queue);
+ return _odp_queue_api->queue_type(queue);
}
odp_schedule_sync_t odp_queue_sched_type(odp_queue_t queue)
{
- return queue_api->queue_sched_type(queue);
+ return _odp_queue_api->queue_sched_type(queue);
}
odp_schedule_prio_t odp_queue_sched_prio(odp_queue_t queue)
{
- return queue_api->queue_sched_prio(queue);
+ return _odp_queue_api->queue_sched_prio(queue);
}
odp_schedule_group_t odp_queue_sched_group(odp_queue_t queue)
{
- return queue_api->queue_sched_group(queue);
+ return _odp_queue_api->queue_sched_group(queue);
}
uint32_t odp_queue_lock_count(odp_queue_t queue)
{
- return queue_api->queue_lock_count(queue);
+ return _odp_queue_api->queue_lock_count(queue);
}
uint64_t odp_queue_to_u64(odp_queue_t hdl)
{
- return queue_api->queue_to_u64(hdl);
+ return _odp_queue_api->queue_to_u64(hdl);
}
void odp_queue_param_init(odp_queue_param_t *param)
{
- return queue_api->queue_param_init(param);
+ return _odp_queue_api->queue_param_init(param);
}
int odp_queue_info(odp_queue_t queue, odp_queue_info_t *info)
{
- return queue_api->queue_info(queue, info);
+ return _odp_queue_api->queue_info(queue, info);
}
int _odp_queue_init_global(void)
@@ -124,7 +104,7 @@ int _odp_queue_init_global(void)
!strcmp(sched, "sp") ||
!strcmp(sched, "iquery")) {
queue_fn = &queue_basic_fn;
- queue_api = &queue_basic_api;
+ _odp_queue_api = &queue_basic_api;
} else {
ODP_ABORT("Unknown scheduler specified via ODP_SCHEDULER\n");
return -1;