diff options
Diffstat (limited to 'example/debug/odp_debug.c')
-rw-r--r-- | example/debug/odp_debug.c | 49 |
1 files changed, 31 insertions, 18 deletions
diff --git a/example/debug/odp_debug.c b/example/debug/odp_debug.c index 8b1ef52ba..5c0beef69 100644 --- a/example/debug/odp_debug.c +++ b/example/debug/odp_debug.c @@ -243,52 +243,65 @@ static int pool_debug(void) static int queue_debug(void) { - odp_queue_t queue; odp_queue_param_t param; const char *name; + int i; + int num = 3; + odp_queue_t queue[num]; - name = "debug_plain_queue"; + name = "plain_queue"; odp_queue_param_init(¶m); param.type = ODP_QUEUE_TYPE_PLAIN; - queue = odp_queue_create(name, ¶m); + queue[0] = odp_queue_create(name, ¶m); - if (queue == ODP_QUEUE_INVALID) { + if (queue[0] == ODP_QUEUE_INVALID) { ODPH_ERR("Queue create failed: %s\n", name); return -1; } printf("\n"); - odp_queue_print_all(); + odp_queue_print(queue[0]); - printf("\n"); - odp_queue_print(queue); + name = "parallel_sched_queue"; + odp_queue_param_init(¶m); + param.type = ODP_QUEUE_TYPE_SCHED; - if (odp_queue_destroy(queue)) { - ODPH_ERR("Queue destroy failed: %s\n", name); + queue[1] = odp_queue_create(name, ¶m); + + if (queue[1] == ODP_QUEUE_INVALID) { + ODPH_ERR("Queue create failed: %s\n", name); return -1; } - name = "debug_sched_queue"; - odp_queue_param_init(¶m); - param.type = ODP_QUEUE_TYPE_SCHED; + printf("\n"); + odp_queue_print(queue[1]); - queue = odp_queue_create(name, ¶m); + name = "atomic_sched_queue"; + param.sched.sync = ODP_SCHED_SYNC_ATOMIC; + param.sched.prio = ODP_SCHED_PRIO_HIGHEST; - if (queue == ODP_QUEUE_INVALID) { + queue[2] = odp_queue_create(name, ¶m); + + if (queue[2] == ODP_QUEUE_INVALID) { ODPH_ERR("Queue create failed: %s\n", name); return -1; } printf("\n"); - odp_queue_print(queue); + odp_queue_print(queue[2]); + + printf("\n"); + odp_queue_print_all(); printf("\n"); odp_schedule_print(); - if (odp_queue_destroy(queue)) { - ODPH_ERR("Queue destroy failed: %s\n", name); - return -1; + for (i = 0; i < num; i++) { + if (odp_queue_destroy(queue[i])) { + ODPH_ERR("Queue destroy failed: %i\n", i); + return -1; + } } return 0; |