| /f-stack/dpdk/lib/librte_acl/ |
| H A D | acl_run.h | 40 uint32_t trie; member 136 parms[n].data_index = ctx->trie[flows->trie].data_index; in acl_start_next_trie() 139 if (flows->trie == 0) { in acl_start_next_trie() 150 ctx->trie[flows->trie].root_index]; in acl_start_next_trie() 156 flows->trie++; in acl_start_next_trie() 157 if (flows->trie >= ctx->num_tries) { in acl_start_next_trie() 158 flows->trie = 0; in acl_start_next_trie() 181 flows->trie = 0; in acl_set_flow()
|
| H A D | acl_run_avx512.c | 23 uint32_t trie, const uint8_t *data[], uint32_t *matches, in acl_set_flow_avx512() argument 29 flow->root_index = ctx->trie[trie].root_index; in acl_set_flow_avx512() 31 flow->data_index = ctx->trie[trie].data_index; in acl_set_flow_avx512()
|
| H A D | acl_gen.c | 430 acl_count_trie_types(counts, node_bld_trie[n].trie, in acl_calc_counts_indices() 448 rte_acl_gen(struct rte_acl_ctx *ctx, struct rte_acl_trie *trie, in rte_acl_gen() argument 510 acl_gen_node(node_bld_trie[n].trie, node_array, no_match, in rte_acl_gen() 513 if (node_bld_trie[n].trie->node_index == no_match) in rte_acl_gen() 514 trie[n].root_index = 0; in rte_acl_gen() 516 trie[n].root_index = node_bld_trie[n].trie->node_index; in rte_acl_gen() 528 memcpy(ctx->trie, trie, sizeof(ctx->trie)); in rte_acl_gen()
|
| H A D | acl.h | 163 struct rte_acl_node *trie; member 184 struct rte_acl_trie trie[RTE_ACL_MAX_TRIES]; member 190 int rte_acl_gen(struct rte_acl_ctx *ctx, struct rte_acl_trie *trie,
|
| H A D | acl_bld.c | 947 struct rte_acl_node *trie; in build_trie() local 956 trie = acl_alloc_node(context, 0); in build_trie() 1052 if (acl_merge_trie(context, trie, root, 0, NULL)) in build_trie() 1058 return trie; in build_trie() 1066 return trie; in build_trie() 1353 context->bld_tries[n].trie = NULL; in acl_build_tries() 1367 if (context->bld_tries[n].trie == NULL) { in acl_build_tries() 1386 acl_free_node(context, context->bld_tries[n].trie); in acl_build_tries() 1486 n = ctx->trie[i].num_data_indexes; in acl_set_data_indexes() 1487 memcpy(ctx->data_indexes + ofs, ctx->trie[i].data_index, in acl_set_data_indexes() [all …]
|
| /f-stack/dpdk/app/test/ |
| H A D | test_fib6.c | 72 config.trie.num_tbl8 = MAX_TBL8; in test_create_invalid() 74 config.trie.nh_sz = RTE_FIB6_TRIE_8B + 1; in test_create_invalid() 78 config.trie.nh_sz = RTE_FIB6_TRIE_8B; in test_create_invalid() 80 config.trie.num_tbl8 = 0; in test_create_invalid() 353 config.trie.nh_sz = RTE_FIB6_TRIE_2B; in test_lookup() 354 config.trie.num_tbl8 = MAX_TBL8 - 1; in test_lookup() 362 config.trie.nh_sz = RTE_FIB6_TRIE_4B; in test_lookup() 363 config.trie.num_tbl8 = MAX_TBL8; in test_lookup() 371 config.trie.nh_sz = RTE_FIB6_TRIE_8B; in test_lookup() 372 config.trie.num_tbl8 = MAX_TBL8; in test_lookup()
|
| H A D | test_fib6_perf.c | 81 conf.trie.nh_sz = RTE_FIB6_TRIE_4B; in test_fib6_perf() 82 conf.trie.num_tbl8 = RTE_MIN(get_max_nh(conf.trie.nh_sz), 1000000U); in test_fib6_perf()
|
| /f-stack/dpdk/lib/librte_fib/ |
| H A D | trie.c | 619 (conf->trie.nh_sz < RTE_FIB6_TRIE_2B) || in trie_create() 620 (conf->trie.nh_sz > RTE_FIB6_TRIE_8B) || in trie_create() 621 (conf->trie.num_tbl8 > in trie_create() 622 get_max_nh(conf->trie.nh_sz)) || in trie_create() 623 (conf->trie.num_tbl8 == 0) || in trie_create() 625 get_max_nh(conf->trie.nh_sz))) { in trie_create() 632 nh_sz = conf->trie.nh_sz; in trie_create() 633 num_tbl8 = conf->trie.num_tbl8; in trie_create()
|
| H A D | rte_fib6.h | 80 } trie; member
|
| H A D | meson.build | 5 sources = files('rte_fib.c', 'rte_fib6.c', 'dir24_8.c', 'trie.c')
|
| /f-stack/dpdk/app/test-fib/ |
| H A D | main.c | 1061 conf.trie.nh_sz = __builtin_ctz(config.ent_sz); in run_v6() 1062 conf.trie.num_tbl8 = RTE_MIN(config.tbl8, in run_v6() 1063 get_max_nh(conf.trie.nh_sz)); in run_v6() 1105 lpm_conf.number_tbl8s = RTE_MAX(conf.trie.num_tbl8, in run_v6()
|
| /f-stack/dpdk/doc/guides/prog_guide/ |
| H A D | lpm6_lib.rst | 18 * Number of tbl8s: A tbl8 is a node of the trie that the LPM6 algorithm is based on. 54 The implementation can be seen as a multi-bit trie where the *stride* 57 This effectively means that the trie has 14 levels at the most, depending on the rules that are add…
|
| H A D | packet_classif_access_ctrl.rst | 321 rule-set into several non-intersecting subsets and construct a separate trie
|
| /f-stack/dpdk/doc/guides/sample_app_ug/ |
| H A D | l3_forward_access_ctrl.rst | 205 …Call the ACL library function to add the rules into the database and compile them as a trie of pat… 340 adds rules parsed from the file into the database and build an ACL trie.
|
| /f-stack/dpdk/doc/guides/rel_notes/ |
| H A D | release_2_1.rst | 397 an ambiguity in building the trie and test results. 406 * **acl: Fix unneeded trie splitting for subset of rules.** 408 When rebuilding a trie for limited rule-set, don't try to split the rule-set
|