aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorMatias Elo <matias.elo@nokia.com>2022-11-01 11:39:04 +0200
committerMatias Elo <matias.elo@nokia.com>2022-11-30 10:32:09 +0200
commitb68b11d612d39bd884e2065bf7ae3a34bbac7658 (patch)
tree35e1ed4fb8da3e1b07a14a454c868ba352897e12 /test
parent05f20b780bf234a791f885fb0e0df49969bbd6c5 (diff)
validation: pktio: test new packet input queue size parameter
Add validation tests for new odp_pktin_queue_param_t.queue_size parameter and ODP_PKTIN_MAX_QUEUES define. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com>
Diffstat (limited to 'test')
-rw-r--r--test/validation/api/pktio/pktio.c16
1 files changed, 11 insertions, 5 deletions
diff --git a/test/validation/api/pktio/pktio.c b/test/validation/api/pktio/pktio.c
index 2eb1a5a28..ecd96868d 100644
--- a/test/validation/api/pktio/pktio.c
+++ b/test/validation/api/pktio/pktio.c
@@ -1605,6 +1605,7 @@ static void test_defaults(uint8_t fill)
CU_ASSERT_EQUAL(qp_in.hash_enable, 0);
CU_ASSERT_EQUAL(qp_in.hash_proto.all_bits, 0);
CU_ASSERT_EQUAL(qp_in.num_queues, 1);
+ CU_ASSERT_EQUAL(qp_in.queue_size[0], 0);
CU_ASSERT_EQUAL(qp_in.queue_param.enq_mode, ODP_QUEUE_OP_MT);
CU_ASSERT_EQUAL(qp_in.queue_param.sched.prio, odp_schedule_default_prio());
CU_ASSERT_EQUAL(qp_in.queue_param.sched.sync, ODP_SCHED_SYNC_PARALLEL);
@@ -1959,28 +1960,33 @@ static void pktio_test_pktin_queue_config_queue(void)
odp_pktio_capability_t capa;
odp_pktin_queue_param_t queue_param;
odp_pktin_queue_t pktin_queues[MAX_QUEUES];
- odp_queue_t in_queues[MAX_QUEUES];
int num_queues;
- pktio = create_pktio(0, ODP_PKTIN_MODE_QUEUE, ODP_PKTOUT_MODE_DIRECT);
+ pktio = create_pktio(0, ODP_PKTIN_MODE_DIRECT, ODP_PKTOUT_MODE_DIRECT);
CU_ASSERT_FATAL(pktio != ODP_PKTIO_INVALID);
CU_ASSERT_FATAL(odp_pktio_capability(pktio, &capa) == 0 &&
capa.max_input_queues > 0);
num_queues = capa.max_input_queues;
+ CU_ASSERT_FATAL(num_queues <= ODP_PKTIN_MAX_QUEUES);
+
+ CU_ASSERT(capa.min_input_queue_size <= capa.max_input_queue_size);
odp_pktin_queue_param_init(&queue_param);
queue_param.hash_enable = (num_queues > 1) ? 1 : 0;
queue_param.hash_proto.proto.ipv4_udp = 1;
queue_param.num_queues = num_queues;
+ for (int i = 0; i < num_queues; i++)
+ queue_param.queue_size[i] = capa.max_input_queue_size;
+
CU_ASSERT_FATAL(odp_pktin_queue_config(pktio, &queue_param) == 0);
- CU_ASSERT(odp_pktin_event_queue(pktio, in_queues, MAX_QUEUES)
- == num_queues);
- CU_ASSERT(odp_pktin_queue(pktio, pktin_queues, MAX_QUEUES) < 0);
+ CU_ASSERT(odp_pktin_queue(pktio, pktin_queues, MAX_QUEUES) == num_queues);
queue_param.num_queues = 1;
+ queue_param.queue_size[0] = capa.min_input_queue_size;
+
CU_ASSERT_FATAL(odp_pktin_queue_config(pktio, &queue_param) == 0);
queue_param.num_queues = capa.max_input_queues + 1;