diff options
author | 2017-12-19 12:11:47 +0100 | |
---|---|---|
committer | 2017-12-27 14:27:26 +0100 | |
commit | 7abe5825508fd48d6b010a3eaff346d715e17e24 (patch) | |
tree | 6f085896c6406a4a5b525b46134c236a987fe8f2 /src/plugins/odp/odp_packet.h | |
parent | 945f7e8ebe39ffa80dfb38b950406a7dd4935f1f (diff) |
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 <mkm@semihalf.com>
Diffstat (limited to 'src/plugins/odp/odp_packet.h')
-rwxr-xr-x | src/plugins/odp/odp_packet.h | 8 |
1 files changed, 6 insertions, 2 deletions
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 |