aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/odp/odp_packet.h
diff options
context:
space:
mode:
authorMichal Mazur <mkm@semihalf.com>2017-12-19 12:11:47 +0100
committerMichal Mazur <mkm@semihalf.com>2017-12-27 14:27:26 +0100
commit7abe5825508fd48d6b010a3eaff346d715e17e24 (patch)
tree6f085896c6406a4a5b525b46134c236a987fe8f2 /src/plugins/odp/odp_packet.h
parent945f7e8ebe39ffa80dfb38b950406a7dd4935f1f (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-xsrc/plugins/odp/odp_packet.h8
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