From 7abe5825508fd48d6b010a3eaff346d715e17e24 Mon Sep 17 00:00:00 2001 From: Michal Mazur Date: Tue, 19 Dec 2017 12:11:47 +0100 Subject: Fix and improve Rx Scheduler mode Fix support of atomic mode and add two new modes: parallel and ordered. Three modes of synchronization between threads are supported now: - parallel - no synchronization between events - ordered - relative sequence of events is restored in output queues - atomic - only a single thread may process events from a single queue Change-Id: I9399aa601f0927042ac0f7f1e5f265f4d47724b8 Signed-off-by: Michal Mazur --- src/plugins/odp/odp_packet.h | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'src/plugins/odp/odp_packet.h') diff --git a/src/plugins/odp/odp_packet.h b/src/plugins/odp/odp_packet.h index f3b478bc..edd3ecaa 100755 --- a/src/plugins/odp/odp_packet.h +++ b/src/plugins/odp/odp_packet.h @@ -11,10 +11,13 @@ #define SHM_PKT_POOL_BUF_SIZE 1856 #define SHM_PKT_POOL_NB_PKTS 10240 #define SHM_PKT_POOL_NAME "packet_pool" + #define APPL_MODE_PKT_BURST 0 #define APPL_MODE_PKT_QUEUE 1 -#define APPL_MODE_PKT_SCHED 2 -#define APPL_MODE_PKT_TM 3 +#define APPL_MODE_PKT_SCHED_ATOMIC 2 +#define APPL_MODE_PKT_SCHED_ORDERED 3 +#define APPL_MODE_PKT_SCHED_PARALLEL 4 +#define APPL_MODE_PKT_TM 2 #define MAX_WORKERS 32 #define MAX_QUEUES (MAX_WORKERS + 1) @@ -52,6 +55,7 @@ typedef struct odp_pktout_queue_t outq[MAX_QUEUES]; odp_queue_t txq[MAX_QUEUES]; odp_if_mode_t m; + odp_schedule_group_t sched_group; } odp_packet_if_t; typedef struct -- cgit 1.2.3-korg