aboutsummaryrefslogtreecommitdiff
path: root/platform/linux-dpdk/odp_queue_basic.c
diff options
context:
space:
mode:
authorMatias Elo <matias.elo@nokia.com>2018-07-10 10:59:32 +0300
committerMatias Elo <matias.elo@nokia.com>2018-07-11 12:59:12 +0300
commitbe6f67ec3a769346cf2168c957942ce110e96a32 (patch)
tree51621bee3a5526b09e1f738e360f42b44b68b799 /platform/linux-dpdk/odp_queue_basic.c
parent4a8aa0a44bfffb2f282f637c7097882a278128c6 (diff)
Port 2a9d3323 "linux-gen: queue: inline queue context"
Signed-off-by: Matias Elo <matias.elo@nokia.com>
Diffstat (limited to 'platform/linux-dpdk/odp_queue_basic.c')
-rw-r--r--platform/linux-dpdk/odp_queue_basic.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/platform/linux-dpdk/odp_queue_basic.c b/platform/linux-dpdk/odp_queue_basic.c
index 97900535b..68249ee1d 100644
--- a/platform/linux-dpdk/odp_queue_basic.c
+++ b/platform/linux-dpdk/odp_queue_basic.c
@@ -27,6 +27,7 @@
#include <odp/api/traffic_mngr.h>
#include <odp_libconfig_internal.h>
#include <odp_timer_internal.h>
+#include <odp/api/plat/queue_inline_types.h>
#define NUM_INTERNAL_QUEUES 64
@@ -45,6 +46,7 @@ static int queue_init(queue_entry_t *queue, const char *name,
const odp_queue_param_t *param);
queue_global_t *queue_glb;
+extern _odp_queue_inline_offset_t _odp_queue_inline_offset;
static inline queue_entry_t *qentry_from_handle(odp_queue_t handle)
{
@@ -129,6 +131,12 @@ static int queue_init_global(void)
ODP_DBG("Starts...\n");
+ /* Fill in queue entry field offsets for inline functions */
+ memset(&_odp_queue_inline_offset, 0,
+ sizeof(_odp_queue_inline_offset_t));
+ _odp_queue_inline_offset.context = offsetof(queue_entry_t,
+ s.param.context);
+
shm = odp_shm_reserve("_odp_queue_gbl",
sizeof(queue_global_t),
sizeof(queue_entry_t), 0);
@@ -415,11 +423,6 @@ static int queue_context_set(odp_queue_t handle, void *context,
return 0;
}
-static void *queue_context(odp_queue_t handle)
-{
- return qentry_from_handle(handle)->s.param.context;
-}
-
static odp_queue_t queue_lookup(const char *name)
{
uint32_t i;
@@ -841,7 +844,6 @@ queue_api_t queue_basic_api = {
.queue_lookup = queue_lookup,
.queue_capability = queue_capability,
.queue_context_set = queue_context_set,
- .queue_context = queue_context,
.queue_enq = queue_enq,
.queue_enq_multi = queue_enq_multi,
.queue_deq = queue_deq,