aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorPetri Savolainen <petri.savolainen@nokia.com>2016-04-26 13:40:41 +0300
committerMaxim Uvarov <maxim.uvarov@linaro.org>2016-04-27 09:24:14 +0300
commit9ca19730b51b5d55fe86c8a776229f9e15bff86a (patch)
tree97abd1caf7832a5a0b21dcb4a1a0d506625360dd /test
parentc65a3c3adb38a38ac4b49bd7c5d62c9bb5fe61e2 (diff)
api: config: replace pool config with pool capability
Removed pool configuration API from config.h and moved to use pool capability API instead. Removed entire all config validation tests, since all config APIs will move to various capability APIs. Signed-off-by: Petri Savolainen <petri.savolainen@nokia.com> Reviewed-and-tested-by: Bill Fischofer <bill.fischofer@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
Diffstat (limited to 'test')
-rw-r--r--test/m4/configure.m41
-rw-r--r--test/validation/Makefile.am1
-rw-r--r--test/validation/config/.gitignore1
-rw-r--r--test/validation/config/Makefile.am10
-rw-r--r--test/validation/config/config.c62
-rw-r--r--test/validation/config/config.h28
-rw-r--r--test/validation/config/config_main.c11
-rw-r--r--test/validation/crypto/crypto.c11
-rw-r--r--test/validation/packet/packet.c124
-rw-r--r--test/validation/pktio/pktio.c8
10 files changed, 95 insertions, 162 deletions
diff --git a/test/m4/configure.m4 b/test/m4/configure.m4
index e5b291a0a..5a7480942 100644
--- a/test/m4/configure.m4
+++ b/test/m4/configure.m4
@@ -10,7 +10,6 @@ AC_CONFIG_FILES([test/Makefile
test/validation/buffer/Makefile
test/validation/classification/Makefile
test/validation/common/Makefile
- test/validation/config/Makefile
test/validation/cpumask/Makefile
test/validation/crypto/Makefile
test/validation/errno/Makefile
diff --git a/test/validation/Makefile.am b/test/validation/Makefile.am
index 074da2613..90cc5498f 100644
--- a/test/validation/Makefile.am
+++ b/test/validation/Makefile.am
@@ -2,7 +2,6 @@ ODP_MODULES = atomic \
barrier \
buffer \
classification \
- config \
cpumask \
crypto \
errno \
diff --git a/test/validation/config/.gitignore b/test/validation/config/.gitignore
deleted file mode 100644
index dbfed8a22..000000000
--- a/test/validation/config/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-config_main \ No newline at end of file
diff --git a/test/validation/config/Makefile.am b/test/validation/config/Makefile.am
deleted file mode 100644
index a4985f436..000000000
--- a/test/validation/config/Makefile.am
+++ /dev/null
@@ -1,10 +0,0 @@
-include ../Makefile.inc
-
-noinst_LTLIBRARIES = libtestconfig.la
-libtestconfig_la_SOURCES = config.c
-
-test_PROGRAMS = config_main$(EXEEXT)
-dist_config_main_SOURCES = config_main.c
-config_main_LDADD = libtestconfig.la $(LIBCUNIT_COMMON) $(LIBODP)
-
-EXTRA_DIST = config.h
diff --git a/test/validation/config/config.c b/test/validation/config/config.c
deleted file mode 100644
index 380163cca..000000000
--- a/test/validation/config/config.c
+++ /dev/null
@@ -1,62 +0,0 @@
-/* Copyright (c) 2015, Linaro Limited
- * All rights reserved.
- *
- * SPDX-License-Identifier: BSD-3-Clause
- */
-
-#include <odp_api.h>
-#include "odp_cunit_common.h"
-#include "config.h"
-
-int config_suite_init(void)
-{
- return 0;
-}
-
-int config_suite_term(void)
-{
- return 0;
-}
-
-void config_test(void)
-{
- CU_ASSERT(odp_config_pools() == ODP_CONFIG_POOLS);
- CU_ASSERT(odp_config_queues() == ODP_CONFIG_QUEUES);
- CU_ASSERT(odp_config_max_ordered_locks_per_queue() ==
- ODP_CONFIG_MAX_ORDERED_LOCKS_PER_QUEUE);
- CU_ASSERT(odp_config_sched_prios() == ODP_CONFIG_SCHED_PRIOS);
- CU_ASSERT(odp_config_sched_grps() == ODP_CONFIG_SCHED_GRPS);
- CU_ASSERT(odp_config_pktio_entries() == ODP_CONFIG_PKTIO_ENTRIES);
- CU_ASSERT(odp_config_buffer_align_min() == ODP_CONFIG_BUFFER_ALIGN_MIN);
- CU_ASSERT(odp_config_buffer_align_max() == ODP_CONFIG_BUFFER_ALIGN_MAX);
- CU_ASSERT(odp_config_packet_headroom() == ODP_CONFIG_PACKET_HEADROOM);
- CU_ASSERT(odp_config_packet_tailroom() == ODP_CONFIG_PACKET_TAILROOM);
- CU_ASSERT(odp_config_packet_seg_len_min() ==
- ODP_CONFIG_PACKET_SEG_LEN_MIN);
- CU_ASSERT(odp_config_packet_seg_len_max() ==
- ODP_CONFIG_PACKET_SEG_LEN_MAX);
- CU_ASSERT(odp_config_packet_buf_len_max() ==
- ODP_CONFIG_PACKET_BUF_LEN_MAX);
- CU_ASSERT(odp_config_shm_blocks() == ODP_CONFIG_SHM_BLOCKS);
-}
-
-odp_testinfo_t config_suite[] = {
- ODP_TEST_INFO(config_test),
- ODP_TEST_INFO_NULL,
-};
-
-odp_suiteinfo_t config_suites[] = {
- {"config tests", config_suite_init,config_suite_term,
- config_suite},
- ODP_SUITE_INFO_NULL,
-};
-
-int config_main(void)
-{
- int ret = odp_cunit_register(config_suites);
-
- if (ret == 0)
- ret = odp_cunit_run();
-
- return ret;
-}
diff --git a/test/validation/config/config.h b/test/validation/config/config.h
deleted file mode 100644
index 55cb5399c..000000000
--- a/test/validation/config/config.h
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Copyright (c) 2015, Linaro Limited
- * All rights reserved.
- *
- * SPDX-License-Identifier: BSD-3-Clause
- */
-
-#ifndef _ODP_TEST_CONFIG_H_
-#define _ODP_TEST_CONFIG_H_
-
-#include <odp_cunit_common.h>
-
-/* test functions: */
-void config_test(void);
-
-/* test arrays: */
-extern odp_testinfo_t config_suite[];
-
-/* test array init/term functions: */
-int config_suite_init(void);
-int config_suite_term(void);
-
-/* test registry: */
-extern odp_suiteinfo_t config_suites[];
-
-/* main test program: */
-int config_main(void);
-
-#endif
diff --git a/test/validation/config/config_main.c b/test/validation/config/config_main.c
deleted file mode 100644
index 4e2038fae..000000000
--- a/test/validation/config/config_main.c
+++ /dev/null
@@ -1,11 +0,0 @@
-/* Copyright (c) 2015, Linaro Limited
- * All rights reserved.
- *
- * SPDX-License-Identifier: BSD-3-Clause
- */
-#include "config.h"
-
-int main(void)
-{
- return config_main();
-}
diff --git a/test/validation/crypto/crypto.c b/test/validation/crypto/crypto.c
index 22a158619..be1fd3fda 100644
--- a/test/validation/crypto/crypto.c
+++ b/test/validation/crypto/crypto.c
@@ -26,24 +26,31 @@ int crypto_init(odp_instance_t *inst)
odp_pool_param_t params;
odp_pool_t pool;
odp_queue_t out_queue;
+ odp_pool_capability_t pool_capa;
if (0 != odp_init_global(inst, NULL, NULL)) {
fprintf(stderr, "error: odp_init_global() failed.\n");
return -1;
}
+
if (0 != odp_init_local(*inst, ODP_THREAD_CONTROL)) {
fprintf(stderr, "error: odp_init_local() failed.\n");
return -1;
}
+ if (odp_pool_capability(&pool_capa) < 0) {
+ fprintf(stderr, "error: odp_pool_capability() failed.\n");
+ return -1;
+ }
+
memset(&params, 0, sizeof(params));
params.pkt.seg_len = SHM_PKT_POOL_BUF_SIZE;
params.pkt.len = SHM_PKT_POOL_BUF_SIZE;
params.pkt.num = SHM_PKT_POOL_SIZE / SHM_PKT_POOL_BUF_SIZE;
params.type = ODP_POOL_PACKET;
- if (SHM_PKT_POOL_BUF_SIZE > odp_config_packet_buf_len_max())
- params.pkt.len = odp_config_packet_buf_len_max();
+ if (SHM_PKT_POOL_BUF_SIZE > pool_capa.pkt.max_len)
+ params.pkt.len = pool_capa.pkt.max_len;
pool = odp_pool_create("packet_pool", &params);
diff --git a/test/validation/packet/packet.c b/test/validation/packet/packet.c
index da84e249d..4bae4d865 100644
--- a/test/validation/packet/packet.c
+++ b/test/validation/packet/packet.c
@@ -15,10 +15,9 @@
#define PACKET_TAILROOM_RESERVE 4
static odp_pool_t packet_pool;
-static const uint32_t packet_len = PACKET_BUF_LEN -
- PACKET_TAILROOM_RESERVE;
+static uint32_t packet_len;
-static uint32_t segmented_packet_len = ODP_CONFIG_PACKET_BUF_LEN_MAX;
+static uint32_t segmented_packet_len;
static odp_bool_t segmentation_supported = true;
odp_packet_t test_packet, segmented_test_packet;
@@ -35,20 +34,33 @@ static struct udata_struct {
int packet_suite_init(void)
{
- odp_pool_param_t params = {
- .pkt = {
- .seg_len = PACKET_BUF_LEN,
- .len = PACKET_BUF_LEN,
- .num = 100,
- .uarea_size = sizeof(struct udata_struct),
- },
- .type = ODP_POOL_PACKET,
- };
+ odp_pool_param_t params;
+ odp_pool_capability_t capa;
struct udata_struct *udat;
uint32_t udat_size;
uint8_t data = 0;
uint32_t i;
+ if (odp_pool_capability(&capa) < 0)
+ return -1;
+
+ packet_len = capa.pkt.min_seg_len - PACKET_TAILROOM_RESERVE;
+
+ if (capa.pkt.max_len) {
+ segmented_packet_len = capa.pkt.max_len;
+ } else {
+ segmented_packet_len = capa.pkt.min_seg_len *
+ capa.pkt.max_segs_per_pkt;
+ }
+
+ odp_pool_param_init(&params);
+
+ params.type = ODP_POOL_PACKET;
+ params.pkt.seg_len = capa.pkt.min_seg_len;
+ params.pkt.len = capa.pkt.min_seg_len;
+ params.pkt.num = 100;
+ params.pkt.uarea_size = sizeof(struct udata_struct);
+
packet_pool = odp_pool_create("packet_pool", &params);
if (packet_pool == ODP_POOL_INVALID)
return -1;
@@ -66,7 +78,7 @@ int packet_suite_init(void)
segmented_test_packet = odp_packet_alloc(packet_pool,
segmented_packet_len);
if (segmented_test_packet == ODP_PACKET_INVALID)
- segmented_packet_len -= ODP_CONFIG_BUFFER_ALIGN_MIN;
+ segmented_packet_len -= capa.pkt.min_seg_len;
} while (segmented_test_packet == ODP_PACKET_INVALID);
if (odp_packet_is_valid(test_packet) == 0 ||
@@ -110,14 +122,17 @@ void packet_test_alloc_free(void)
{
odp_pool_t pool;
odp_packet_t packet;
- odp_pool_param_t params = {
- .pkt = {
- .seg_len = PACKET_BUF_LEN,
- .len = PACKET_BUF_LEN,
- .num = 1,
- },
- .type = ODP_POOL_PACKET,
- };
+ odp_pool_param_t params;
+ odp_pool_capability_t capa;
+
+ CU_ASSERT_FATAL(odp_pool_capability(&capa) == 0);
+
+ odp_pool_param_init(&params);
+
+ params.type = ODP_POOL_PACKET;
+ params.pkt.seg_len = capa.pkt.min_seg_len;
+ params.pkt.len = capa.pkt.min_seg_len;
+ params.pkt.num = 1;
pool = odp_pool_create("packet_pool_alloc", &params);
@@ -170,14 +185,17 @@ void packet_test_alloc_free_multi(void)
int i, ret;
odp_packet_t packet[2 * num_pkt + 1];
odp_packet_t inval_pkt[num_pkt];
- odp_pool_param_t params = {
- .pkt = {
- .seg_len = PACKET_BUF_LEN,
- .len = PACKET_BUF_LEN,
- .num = num_pkt,
- },
- .type = ODP_POOL_PACKET,
- };
+ odp_pool_param_t params;
+ odp_pool_capability_t capa;
+
+ CU_ASSERT_FATAL(odp_pool_capability(&capa) == 0);
+
+ odp_pool_param_init(&params);
+
+ params.type = ODP_POOL_PACKET;
+ params.pkt.seg_len = capa.pkt.min_seg_len;
+ params.pkt.len = capa.pkt.min_seg_len;
+ params.pkt.num = num_pkt;
pool[0] = odp_pool_create("packet_pool_alloc_multi_0", &params);
pool[1] = odp_pool_create("packet_pool_alloc_multi_1", &params);
@@ -228,9 +246,15 @@ void packet_test_alloc_free_multi(void)
void packet_test_alloc_segmented(void)
{
odp_packet_t pkt;
- const uint32_t len = ODP_CONFIG_PACKET_BUF_LEN_MAX -
- ODP_CONFIG_PACKET_HEADROOM -
- ODP_CONFIG_PACKET_TAILROOM;
+ uint32_t len;
+ odp_pool_capability_t capa;
+
+ CU_ASSERT_FATAL(odp_pool_capability(&capa) == 0);
+
+ if (capa.pkt.max_len)
+ len = capa.pkt.max_len;
+ else
+ len = capa.pkt.min_seg_len * capa.pkt.max_segs_per_pkt;
pkt = odp_packet_alloc(packet_pool, len);
CU_ASSERT_FATAL(pkt != ODP_PACKET_INVALID);
@@ -286,18 +310,18 @@ void packet_test_length(void)
{
odp_packet_t pkt = test_packet;
uint32_t buf_len, headroom, tailroom;
+ odp_pool_capability_t capa;
+
+ CU_ASSERT_FATAL(odp_pool_capability(&capa) == 0);
buf_len = odp_packet_buf_len(pkt);
headroom = odp_packet_headroom(pkt);
tailroom = odp_packet_tailroom(pkt);
CU_ASSERT(odp_packet_len(pkt) == packet_len);
-#if ODP_CONFIG_PACKET_HEADROOM != 0 /* Avoid 'always true' warning */
- CU_ASSERT(headroom >= ODP_CONFIG_PACKET_HEADROOM);
-#endif
-#if ODP_CONFIG_PACKET_TAILROOM != 0 /* Avoid 'always true' warning */
- CU_ASSERT(tailroom >= ODP_CONFIG_PACKET_TAILROOM);
-#endif
+ CU_ASSERT(headroom >= capa.pkt.min_headroom);
+ CU_ASSERT(tailroom >= capa.pkt.min_tailroom);
+
CU_ASSERT(buf_len >= packet_len + headroom + tailroom);
}
@@ -445,13 +469,15 @@ void packet_test_headroom(void)
uint32_t room;
uint32_t seg_data_len;
uint32_t push_val, pull_val;
+ odp_pool_capability_t capa;
+
+ CU_ASSERT_FATAL(odp_pool_capability(&capa) == 0);
CU_ASSERT_FATAL(pkt != ODP_PACKET_INVALID);
room = odp_packet_headroom(pkt);
-#if ODP_CONFIG_PACKET_HEADROOM != 0 /* Avoid 'always true' warning */
- CU_ASSERT(room >= ODP_CONFIG_PACKET_HEADROOM);
-#endif
+ CU_ASSERT(room >= capa.pkt.min_headroom);
+
seg_data_len = odp_packet_seg_len(pkt);
CU_ASSERT(seg_data_len >= 1);
/** @todo: should be len - 1 */
@@ -564,15 +590,17 @@ void packet_test_tailroom(void)
uint32_t room;
uint32_t seg_data_len;
uint32_t push_val, pull_val;
+ odp_pool_capability_t capa;
+
+ CU_ASSERT_FATAL(odp_pool_capability(&capa) == 0);
CU_ASSERT_FATAL(pkt != ODP_PACKET_INVALID);
segment = odp_packet_last_seg(pkt);
CU_ASSERT(segment != ODP_PACKET_SEG_INVALID);
room = odp_packet_tailroom(pkt);
-#if ODP_CONFIG_PACKET_TAILROOM != 0 /* Avoid 'always true' warning */
- CU_ASSERT(room >= ODP_CONFIG_PACKET_TAILROOM);
-#endif
+ CU_ASSERT(room >= capa.pkt.min_tailroom);
+
seg_data_len = odp_packet_seg_data_len(pkt, segment);
CU_ASSERT(seg_data_len >= 1);
/** @todo: should be len - 1 */
@@ -755,6 +783,12 @@ void packet_test_add_rem_data(void)
void *usr_ptr;
struct udata_struct *udat, *new_udat;
int ret;
+ odp_pool_capability_t capa;
+ uint32_t min_seg_len;
+
+ CU_ASSERT_FATAL(odp_pool_capability(&capa) == 0);
+
+ min_seg_len = capa.pkt.min_seg_len;
pkt = odp_packet_alloc(packet_pool, packet_len);
CU_ASSERT_FATAL(pkt != ODP_PACKET_INVALID);
@@ -770,7 +804,7 @@ void packet_test_add_rem_data(void)
if (segmentation_supported) {
/* Insert one more packet length in the middle of a packet */
- add_len = PACKET_BUF_LEN;
+ add_len = min_seg_len;
} else {
/* Add diff between largest and smaller packets
* which is at least tailroom */
diff --git a/test/validation/pktio/pktio.c b/test/validation/pktio/pktio.c
index 94c06d9ed..a51e0b2cc 100644
--- a/test/validation/pktio/pktio.c
+++ b/test/validation/pktio/pktio.c
@@ -1634,6 +1634,12 @@ int pktio_check_send_failure(void)
odp_pktio_param_t pktio_param;
int iface_idx = 0;
const char *iface = iface_name[iface_idx];
+ odp_pool_capability_t pool_capa;
+
+ if (odp_pool_capability(&pool_capa) < 0) {
+ fprintf(stderr, "%s: pool capability failed\n", __func__);
+ return ODP_TEST_INACTIVE;
+ };
memset(&pktio_param, 0, sizeof(pktio_param));
@@ -1650,7 +1656,7 @@ int pktio_check_send_failure(void)
odp_pktio_close(pktio_tx);
- if (mtu <= ODP_CONFIG_PACKET_BUF_LEN_MAX - 32)
+ if (mtu <= pool_capa.pkt.max_len - 32)
return ODP_TEST_ACTIVE;
return ODP_TEST_INACTIVE;