summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorPablo de Lara <pablo.de.lara.guarch@intel.com>2015-08-17 17:58:32 +0100
committerThomas Monjalon <thomas.monjalon@6wind.com>2015-08-17 19:08:55 +0200
commit1060e03b860e1b0d21a50f99c679bba59ca869bb (patch)
treee342489c7c6d69352d8c904a90d8b23a16a6710e /app
parent80ef54b279fc4edde3a91c2a6248f6863c997975 (diff)
downloaddpdk-1060e03b860e1b0d21a50f99c679bba59ca869bb.zip
dpdk-1060e03b860e1b0d21a50f99c679bba59ca869bb.tar.gz
dpdk-1060e03b860e1b0d21a50f99c679bba59ca869bb.tar.xz
app/test: initialize table parameters
In table_autotest, the structures containing the parameters to create the tables were not initialized, and therefore, some checks could fail and so the unit test. Also, due to this initialization, one of the tests that was checking if the table was improperly initialized has been removed, as it is not needed anymore (duplicated) Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Diffstat (limited to 'app')
-rw-r--r--app/test/test_table_tables.c91
1 files changed, 55 insertions, 36 deletions
diff --git a/app/test/test_table_tables.c b/app/test/test_table_tables.c
index 88bebf8..566964b 100644
--- a/app/test/test_table_tables.c
+++ b/app/test/test_table_tables.c
@@ -203,8 +203,11 @@ test_table_array(void)
void *entry_ptr;
int key_found;
- /* Create */
- struct rte_table_array_params array_params;
+ /* Initialize params and create tables */
+ struct rte_table_array_params array_params = {
+ .n_entries = 7,
+ .offset = 1
+ };
table = rte_table_array_ops.f_create(NULL, 0, 1);
if (table != NULL)
@@ -317,8 +320,12 @@ test_table_lpm(void)
int key_found;
uint32_t entry_size = 1;
- /* Create */
- struct rte_table_lpm_params lpm_params;
+ /* Initialize params and create tables */
+ struct rte_table_lpm_params lpm_params = {
+ .n_rules = 1 << 24,
+ .entry_unique_size = entry_size,
+ .offset = 1
+ };
table = rte_table_lpm_ops.f_create(NULL, 0, entry_size);
if (table != NULL)
@@ -331,39 +338,33 @@ test_table_lpm(void)
return -2;
lpm_params.n_rules = 1 << 24;
- lpm_params.offset = 1;
-
- table = rte_table_lpm_ops.f_create(&lpm_params, 0, entry_size);
- if (table != NULL)
- return -3;
-
lpm_params.offset = 32;
lpm_params.entry_unique_size = 0;
table = rte_table_lpm_ops.f_create(&lpm_params, 0, entry_size);
if (table != NULL)
- return -4;
+ return -3;
lpm_params.entry_unique_size = entry_size + 1;
table = rte_table_lpm_ops.f_create(&lpm_params, 0, entry_size);
if (table != NULL)
- return -5;
+ return -4;
lpm_params.entry_unique_size = entry_size;
table = rte_table_lpm_ops.f_create(&lpm_params, 0, entry_size);
if (table == NULL)
- return -6;
+ return -5;
/* Free */
status = rte_table_lpm_ops.f_free(table);
if (status < 0)
- return -7;
+ return -6;
status = rte_table_lpm_ops.f_free(NULL);
if (status == 0)
- return -8;
+ return -7;
/* Add */
struct rte_table_lpm_key lpm_key;
@@ -371,75 +372,75 @@ test_table_lpm(void)
table = rte_table_lpm_ops.f_create(&lpm_params, 0, 1);
if (table == NULL)
- return -9;
+ return -8;
status = rte_table_lpm_ops.f_add(NULL, &lpm_key, &entry, &key_found,
&entry_ptr);
if (status == 0)
- return -10;
+ return -9;
status = rte_table_lpm_ops.f_add(table, NULL, &entry, &key_found,
&entry_ptr);
if (status == 0)
- return -11;
+ return -10;
status = rte_table_lpm_ops.f_add(table, &lpm_key, NULL, &key_found,
&entry_ptr);
if (status == 0)
- return -12;
+ return -11;
lpm_key.depth = 0;
status = rte_table_lpm_ops.f_add(table, &lpm_key, &entry, &key_found,
&entry_ptr);
if (status == 0)
- return -13;
+ return -12;
lpm_key.depth = 33;
status = rte_table_lpm_ops.f_add(table, &lpm_key, &entry, &key_found,
&entry_ptr);
if (status == 0)
- return -14;
+ return -13;
lpm_key.depth = 16;
status = rte_table_lpm_ops.f_add(table, &lpm_key, &entry, &key_found,
&entry_ptr);
if (status != 0)
- return -15;
+ return -14;
/* Delete */
status = rte_table_lpm_ops.f_delete(NULL, &lpm_key, &key_found, NULL);
if (status == 0)
- return -16;
+ return -15;
status = rte_table_lpm_ops.f_delete(table, NULL, &key_found, NULL);
if (status == 0)
- return -17;
+ return -16;
lpm_key.depth = 0;
status = rte_table_lpm_ops.f_delete(table, &lpm_key, &key_found, NULL);
if (status == 0)
- return -18;
+ return -17;
lpm_key.depth = 33;
status = rte_table_lpm_ops.f_delete(table, &lpm_key, &key_found, NULL);
if (status == 0)
- return -19;
+ return -18;
lpm_key.depth = 16;
status = rte_table_lpm_ops.f_delete(table, &lpm_key, &key_found, NULL);
if (status != 0)
- return -20;
+ return -19;
status = rte_table_lpm_ops.f_delete(table, &lpm_key, &key_found, NULL);
if (status != 0)
- return -21;
+ return -20;
/* Traffic flow */
entry = 'A';
status = rte_table_lpm_ops.f_add(table, &lpm_key, &entry, &key_found,
&entry_ptr);
if (status < 0)
- return -22;
+ return -21;
for (i = 0; i < RTE_PORT_IN_BURST_SIZE_MAX; i++)
if (i % 2 == 0) {
@@ -451,7 +452,7 @@ test_table_lpm(void)
rte_table_lpm_ops.f_lookup(table, mbufs, -1,
&result_mask, (void **)entries);
if (result_mask != expected_mask)
- return -21;
+ return -22;
/* Free resources */
for (i = 0; i < RTE_PORT_IN_BURST_SIZE_MAX; i++)
@@ -475,8 +476,13 @@ test_table_lpm_ipv6(void)
int key_found;
uint32_t entry_size = 1;
- /* Create */
- struct rte_table_lpm_ipv6_params lpm_params;
+ /* Initialize params and create tables */
+ struct rte_table_lpm_ipv6_params lpm_params = {
+ .n_rules = 1 << 24,
+ .number_tbl8s = 1 << 21,
+ .entry_unique_size = entry_size,
+ .offset = 32
+ };
table = rte_table_lpm_ipv6_ops.f_create(NULL, 0, entry_size);
if (table != NULL)
@@ -639,8 +645,14 @@ test_table_hash_lru_generic(struct rte_table_ops *ops)
void *entry_ptr;
int key_found;
- /* Create */
- struct rte_table_hash_key8_lru_params hash_params;
+ /* Initialize params and create tables */
+ struct rte_table_hash_key8_lru_params hash_params = {
+ .n_entries = 1 << 10,
+ .f_hash = pipeline_test_hash,
+ .seed = 0,
+ .signature_offset = 1,
+ .key_offset = 32
+ };
hash_params.n_entries = 0;
@@ -747,8 +759,15 @@ test_table_hash_ext_generic(struct rte_table_ops *ops)
int key_found;
void *entry_ptr;
- /* Create */
- struct rte_table_hash_key8_ext_params hash_params;
+ /* Initialize params and create tables */
+ struct rte_table_hash_key8_ext_params hash_params = {
+ .n_entries = 1 << 10,
+ .n_entries_ext = 1 << 4,
+ .f_hash = pipeline_test_hash,
+ .seed = 0,
+ .signature_offset = 1,
+ .key_offset = 32
+ };
hash_params.n_entries = 0;