Home
last modified time | relevance | path

Searched refs:table (Results 1 – 25 of 153) sorted by relevance

1234567

/dpdk/lib/efd/
H A Drte_efd.c37 #define EFD_KEY(key_idx, table) (table->keys + ((key_idx) * table->key_len)) argument
39 #define EFD_HASH(key, table) \ argument
40 (uint32_t)(rte_jhash(key, table->key_len, 0xbc9f1d34))
42 #define EFD_HASHFUNCA(key, table) \ argument
43 (uint32_t)(rte_hash_crc(key, table->key_len, 0xbc9f1d35))
45 #define EFD_HASHFUNCB(key, table) \ argument
46 (uint32_t)(rte_hash_crc(key, table->key_len, 0xbc9f1d36))
52 /* These parameters are fixed by the efd_bin_to_group balancing table */
280 efd_get_chunk_id(const struct rte_efd_table * const table,const uint32_t hashed_key) efd_get_chunk_id() argument
297 efd_get_bin_id(const struct rte_efd_table * const table,const uint32_t hashed_key) efd_get_bin_id() argument
319 efd_get_choice(const struct rte_efd_table * const table,const unsigned int socket_id,const uint32_t chunk_id,const uint32_t bin_id) efd_get_choice() argument
355 efd_compute_ids(const struct rte_efd_table * const table,const void * key,uint32_t * const chunk_id,uint32_t * const bin_id) efd_compute_ids() argument
375 efd_search_hash(struct rte_efd_table * const table,const struct efd_offline_group_rules * const off_group,struct efd_online_group_entry * const on_group) efd_search_hash() argument
503 struct rte_efd_table *table = NULL; rte_efd_create() local
726 struct rte_efd_table *table = NULL; rte_efd_find_existing() local
750 rte_efd_free(struct rte_efd_table * table) rte_efd_free() argument
802 efd_apply_update(struct rte_efd_table * const table,const unsigned int socket_id,const uint32_t chunk_id,const uint32_t group_id,const uint32_t bin_id,const uint8_t new_bin_choice,const struct efd_online_group_entry * const new_group_entry) efd_apply_update() argument
963 efd_compute_update(struct rte_efd_table * const table,const unsigned int socket_id,const void * key,const efd_value_t value,uint32_t * const chunk_id,uint32_t * const group_id,uint32_t * const bin_id,uint8_t * const new_bin_choice,struct efd_online_group_entry * const entry) efd_compute_update() argument
1166 rte_efd_update(struct rte_efd_table * const table,const unsigned int socket_id,const void * key,const efd_value_t value) rte_efd_update() argument
1189 rte_efd_delete(struct rte_efd_table * const table,const unsigned int socket_id,const void * key,efd_value_t * const prev_value) rte_efd_delete() argument
1305 rte_efd_lookup(const struct rte_efd_table * const table,const unsigned int socket_id,const void * key) rte_efd_lookup() argument
1325 rte_efd_lookup_bulk(const struct rte_efd_table * const table,const unsigned int socket_id,const int num_keys,const void ** key_list,efd_value_t * const value_list) rte_efd_lookup_bulk() argument
[all...]
/dpdk/lib/pipeline/
H A Drte_swx_ctl.c43 struct table { struct
146 struct table *tables;
187 static struct table *
193 struct table *table = &ctl->tables[i]; in table_find() local
195 if (!strcmp(table_name, table->info.name)) in table_find()
196 return table; in table_find()
205 struct table *table = &ctl->tables[table_id]; in table_params_get() local
211 if (table->info.n_match_fields) { in table_params_get()
215 first = &table->mf[0]; in table_params_get()
216 last = &table->mf[0]; in table_params_get()
[all …]
H A Drte_pipeline.c154 rte_pipeline_table_free(struct rte_table *table);
255 struct rte_table *table = &p->tables[i]; in rte_pipeline_free() local
257 rte_pipeline_table_free(table); in rte_pipeline_free()
332 struct rte_table *table; in rte_pipeline_table_create() local
344 table = &p->tables[id]; in rte_pipeline_table_create()
371 memcpy(&table->ops, params->ops, sizeof(struct rte_table_ops)); in rte_pipeline_table_create()
372 table->f_action_hit = params->f_action_hit; in rte_pipeline_table_create()
373 table->f_action_miss = params->f_action_miss; in rte_pipeline_table_create()
374 table->arg_ah = params->arg_ah; in rte_pipeline_table_create()
375 table->entry_size = entry_size; in rte_pipeline_table_create()
[all …]
/dpdk/examples/ip_pipeline/examples/
H A Droute_ecmp.cli22 table action profile APRT ipv4 offset 270 fwd balance offset 278 mask 00FF0000FFFFFFFFFFFFFFFFFFFFF…
23 table action profile APNH ipv4 offset 270 fwd encap ether
38 pipeline PIPELINE0 table match lpm ipv4 offset 286 size 4K action APRT
39 pipeline PIPELINE0 table match array offset 256 size 64K action APNH
41 pipeline PIPELINE0 port in 0 table 0
42 pipeline PIPELINE0 port in 1 table 0
43 pipeline PIPELINE0 port in 2 table 0
44 pipeline PIPELINE0 port in 3 table 0
48 pipeline PIPELINE0 table 0 rule add match default action fwd port 4
49 pipeline PIPELINE0 table 0 rule add match lpm ipv4 100.0.0.0 10 action fwd table 1 balance 0 0 0 0 …
[all …]
H A Drss.cli63 pipeline PIPELINE0 table match stub
64 pipeline PIPELINE0 port in 0 table 0
65 pipeline PIPELINE0 port in 1 table 0
66 pipeline PIPELINE0 port in 2 table 0
67 pipeline PIPELINE0 port in 3 table 0
68 pipeline PIPELINE0 table 0 rule add match default action fwd port 0
76 pipeline PIPELINE1 table match stub
77 pipeline PIPELINE1 port in 0 table 0
78 pipeline PIPELINE1 port in 1 table 0
79 pipeline PIPELINE1 port in 2 table 0
[all …]
H A Dl2fwd.cli36 pipeline PIPELINE0 table match stub
37 pipeline PIPELINE0 table match stub
38 pipeline PIPELINE0 table match stub
39 pipeline PIPELINE0 table match stub
41 pipeline PIPELINE0 port in 0 table 0
42 pipeline PIPELINE0 port in 1 table 1
43 pipeline PIPELINE0 port in 2 table 2
44 pipeline PIPELINE0 port in 3 table 3
48 pipeline PIPELINE0 table 0 rule add match default action fwd port 1
49 pipeline PIPELINE0 table 1 rule add match default action fwd port 0
[all …]
H A Dtap.cli37 table action profile AP0 ipv4 offset 270 fwd
51 pipeline PIPELINE0 table match stub action AP0
52 pipeline PIPELINE0 table match stub action AP0
53 pipeline PIPELINE0 table match stub action AP0
54 pipeline PIPELINE0 table match stub action AP0
56 pipeline PIPELINE0 port in 0 table 0
57 pipeline PIPELINE0 port in 1 table 1
58 pipeline PIPELINE0 port in 2 table 2
59 pipeline PIPELINE0 port in 3 table 3
63 pipeline PIPELINE0 table 0 rule add match default action fwd port 0
[all …]
H A Dfirewall.cli32 table action profile AP0 ipv4 offset 270 fwd
46 pipeline PIPELINE0 table match acl ipv4 offset 270 size 4K action AP0
48 pipeline PIPELINE0 port in 0 table 0
49 pipeline PIPELINE0 port in 1 table 0
50 pipeline PIPELINE0 port in 2 table 0
51 pipeline PIPELINE0 port in 3 table 0
55 pipeline PIPELINE0 table 0 rule add match default action fwd drop
56 pipeline PIPELINE0 table 0 rule add match acl priority 0 ipv4 0.0.0.0 0 100.0.0.0 10 0 65535 0 6553…
57 pipeline PIPELINE0 table 0 rule add match acl priority 0 ipv4 0.0.0.0 0 100.64.0.0 10 0 65535 0 655…
58 pipeline PIPELINE0 table 0 rule add match acl priority 0 ipv4 0.0.0.0 0 100.128.0.0 10 0 65535 0 65…
[all …]
H A Dflow.cli32 table action profile AP0 ipv4 offset 270 fwd
47 pipeline PIPELINE0 table match hash ext key 16 mask 00FF0000FFFFFFFFFFFFFFFFFFFFFFFF offset 278 buc…
49 pipeline PIPELINE0 port in 0 table 0
50 pipeline PIPELINE0 port in 1 table 0
51 pipeline PIPELINE0 port in 2 table 0
52 pipeline PIPELINE0 port in 3 table 0
56 pipeline PIPELINE0 table 0 rule add match default action fwd port 4
57 pipeline PIPELINE0 table 0 rule add match hash ipv4_5tuple 100.0.0.10 200.0.0.10 100 200 6 action f…
58 pipeline PIPELINE0 table 0 rule add match hash ipv4_5tuple 100.0.0.11 200.0.0.11 101 201 6 action f…
59 pipeline PIPELINE0 table 0 rule add match hash ipv4_5tuple 100.0.0.12 200.0.0.12 102 202 6 action f…
[all …]
H A Dflow_crypto.cli30 table action profile AP0 ipv4 offset 270 fwd sym_crypto dev CRYPTO0 offset 1792
31 table action profile AP1 ipv4 offset 270 fwd
42 pipeline PIPELINE0 table match hash ext key 8 mask FFFFFFFF00000000 offset 282 buckets 1K size 4K a…
43 pipeline PIPELINE0 table match stub action AP1
45 pipeline PIPELINE0 port in 0 table 0
46 pipeline PIPELINE0 port in 1 table 1
50 pipeline PIPELINE0 table 0 rule add match default action fwd port 2
53 pipeline PIPELINE0 table 0 rule add match hash ipv4_addr 100.0.0.10 action fwd port 0 sym_crypto en…
55 #pipeline PIPELINE0 table 0 rule add match hash ipv4_addr 100.0.0.10 action fwd port 0 sym_crypto d…
57 pipeline PIPELINE0 table 1 rule add match default action fwd port 1
H A Droute.cli32 table action profile AP0 ipv4 offset 270 fwd encap ether
47 pipeline PIPELINE0 table match lpm ipv4 offset 286 size 4K action AP0
49 pipeline PIPELINE0 port in 0 table 0
50 pipeline PIPELINE0 port in 1 table 0
51 pipeline PIPELINE0 port in 2 table 0
52 pipeline PIPELINE0 port in 3 table 0
56 pipeline PIPELINE0 table 0 rule add match default action fwd port 4
57 pipeline PIPELINE0 table 0 rule add match lpm ipv4 100.0.0.0 10 action fwd port 0 encap ether a0:a1…
58 pipeline PIPELINE0 table 0 rule add match lpm ipv4 100.64.0.0 10 action fwd port 1 encap ether b0:b…
59 pipeline PIPELINE0 table 0 rule add match lpm ipv4 100.128.0.0 10 action fwd port 2 encap ether c0:…
[all …]
/dpdk/lib/table/
H A Drte_table_stub.c15 #define RTE_TABLE_LPM_STATS_PKTS_IN_ADD(table, val) \ argument
16 table->stats.n_pkts_in += val
17 #define RTE_TABLE_LPM_STATS_PKTS_LOOKUP_MISS(table, val) \ argument
18 table->stats.n_pkts_lookup_miss += val
22 #define RTE_TABLE_LPM_STATS_PKTS_IN_ADD(table, val) argument
23 #define RTE_TABLE_LPM_STATS_PKTS_LOOKUP_MISS(table, val) argument
54 __rte_unused void *table, in rte_table_stub_lookup() argument
60 __rte_unused struct rte_table_stub *stub = (struct rte_table_stub *) table; in rte_table_stub_lookup()
71 rte_table_stub_stats_read(void *table, struct rte_table_stats *stats, int clear) in rte_table_stub_stats_read() argument
73 struct rte_table_stub *t = table; in rte_table_stub_stats_read()
H A Drte_table_array.c19 #define RTE_TABLE_ARRAY_STATS_PKTS_IN_ADD(table, val) \ argument
20 table->stats.n_pkts_in += val
21 #define RTE_TABLE_ARRAY_STATS_PKTS_LOOKUP_MISS(table, val) \ argument
22 table->stats.n_pkts_lookup_miss += val
26 #define RTE_TABLE_ARRAY_STATS_PKTS_IN_ADD(table, val) argument
27 #define RTE_TABLE_ARRAY_STATS_PKTS_LOOKUP_MISS(table, val) argument
83 rte_table_array_free(void *table) in rte_table_array_free() argument
85 struct rte_table_array *t = table; in rte_table_array_free()
101 void *table, in rte_table_array_entry_add() argument
107 struct rte_table_array *t = table; in rte_table_array_entry_add()
[all …]
H A Drte_table_hash_cuckoo.c19 #define RTE_TABLE_HASH_CUCKOO_STATS_PKTS_IN_ADD(table, val) \ argument
20 (table->stats.n_pkts_in += val)
21 #define RTE_TABLE_HASH_CUCKOO_STATS_PKTS_LOOKUP_MISS(table, val) \ argument
22 (table->stats.n_pkts_lookup_miss += val)
26 #define RTE_TABLE_HASH_CUCKOO_STATS_PKTS_IN_ADD(table, val) argument
27 #define RTE_TABLE_HASH_CUCKOO_STATS_PKTS_LOOKUP_MISS(table, val) argument
145 rte_table_hash_cuckoo_free(void *table) { in rte_table_hash_cuckoo_free() argument
146 struct rte_table_hash *t = table; in rte_table_hash_cuckoo_free()
148 if (table == NULL) in rte_table_hash_cuckoo_free()
158 rte_table_hash_cuckoo_entry_add(void *table, void *key, void *entry, in rte_table_hash_cuckoo_entry_add() argument
[all …]
H A Drte_table.h17 * key can be fitted under this lookup table abstraction. For the flow table
28 /** Lookup table statistics */
35 * Lookup table create
38 * Parameters for lookup table creation. The underlying data structure is
39 * different for each lookup table type.
43 * Data size of each lookup table entry (measured in bytes)
45 * Handle to lookup table instance
51 * Lookup table free
53 * @param table
[all...]
H A Drte_swx_table_learner.h11 * The learner table API.
13 * This table type is typically used for learning or connection tracking, where it allows for the
14 * implementation of the "add on miss" scenario: whenever the lookup key is not found in the table
15 * (lookup miss), the data plane can decide to add this key to the table with a given action with no
16 * control plane intervention. Likewise, the table keys expire based on a configurable timeout and
17 * are thus automatically removed from the table with no control plane intervention.
20 * has to be explicitly reinitialized on lookup hit. The key will be kept in the table as long as it
25 * a) add: Add the current input key (the key that missed the lookup) to the table with given
27 * table (which is empty initially). Data plane operation.
28 * b) Do nothing: Keep the current input key out of the table
[all...]
H A Drte_swx_table_learner.c148 struct __rte_cache_aligned table { struct
243 p->total_size = sizeof(struct table) + p->n_buckets * p->bucket_size; in table_params_get()
249 table_bucket_get(struct table *t, size_t bucket_id) in table_bucket_get()
255 table_bucket_key_get(struct table *t, struct table_bucket *b, size_t bucket_key_pos) in table_bucket_key_get()
261 table_bucket_data_get(struct table *t, struct table_bucket *b, size_t bucket_key_pos) in table_bucket_data_get()
268 table_entry_id_get(struct table *t, struct table_bucket *b, size_t bucket_key_pos) in table_entry_id_get()
290 struct table *t; in rte_swx_table_learner_create()
310 rte_swx_table_learner_free(void *table) in rte_swx_table_learner_free() argument
312 struct table *t = table; in rte_swx_table_learner_free()
321 rte_swx_table_learner_timeout_update(void *table, in rte_swx_table_learner_timeout_update() argument
[all …]
H A Drte_table_lpm.c25 #define RTE_TABLE_LPM_STATS_PKTS_IN_ADD(table, val) \ argument
26 table->stats.n_pkts_in += val
27 #define RTE_TABLE_LPM_STATS_PKTS_LOOKUP_MISS(table, val) \ argument
28 table->stats.n_pkts_lookup_miss += val
32 #define RTE_TABLE_LPM_STATS_PKTS_IN_ADD(table, val) argument
33 #define RTE_TABLE_LPM_STATS_PKTS_LOOKUP_MISS(table, val) argument
127 rte_table_lpm_free(void *table) in rte_table_lpm_free() argument
129 struct rte_table_lpm *lpm = table; in rte_table_lpm_free()
179 void *table, in rte_table_lpm_entry_add() argument
185 struct rte_table_lpm *lpm = table; in rte_table_lpm_entry_add()
[all …]
H A Drte_table_lpm_ipv6.c22 #define RTE_TABLE_LPM_IPV6_STATS_PKTS_IN_ADD(table, val) \ argument
23 table->stats.n_pkts_in += val
24 #define RTE_TABLE_LPM_IPV6_STATS_PKTS_LOOKUP_MISS(table, val) \ argument
25 table->stats.n_pkts_lookup_miss += val
29 #define RTE_TABLE_LPM_IPV6_STATS_PKTS_IN_ADD(table, val) argument
30 #define RTE_TABLE_LPM_IPV6_STATS_PKTS_LOOKUP_MISS(table, val) argument
43 /* Handle to low-level LPM table */
97 "%s: Cannot allocate %u bytes for LPM IPv6 table", in rte_table_lpm_ipv6_create()
102 /* LPM low-level table creation */ in rte_table_lpm_ipv6_create()
110 "Unable to create low-level LPM IPv6 table"); in rte_table_lpm_ipv6_create()
124 rte_table_lpm_ipv6_free(void * table) rte_table_lpm_ipv6_free() argument
176 rte_table_lpm_ipv6_entry_add(void * table,void * key,void * entry,int * key_found,void ** entry_ptr) rte_table_lpm_ipv6_entry_add() argument
245 rte_table_lpm_ipv6_entry_delete(void * table,void * key,int * key_found,void * entry) rte_table_lpm_ipv6_entry_delete() argument
306 rte_table_lpm_ipv6_lookup(void * table,struct rte_mbuf ** pkts,uint64_t pkts_mask,uint64_t * lookup_hit_mask,void ** entries) rte_table_lpm_ipv6_lookup() argument
346 rte_table_lpm_ipv6_stats_read(void * table,struct rte_table_stats * stats,int clear) rte_table_lpm_ipv6_stats_read() argument
[all...]
/dpdk/drivers/net/mana/
H A Dmr.c204 mr = &bt->table[i]; in mana_remove_all_mr()
221 mem = rte_realloc_socket(bt->table, n * sizeof(struct mana_mr_cache), in mana_mr_btree_expand()
229 bt->table = mem; in mana_mr_btree_expand()
242 struct mana_mr_cache *table; in mana_mr_btree_lookup() local
257 table = bt->table; in mana_mr_btree_lookup()
263 if (addr < table[base + delta].addr) { in mana_mr_btree_lookup()
273 if (addr + len <= table[base].addr + table[base].len) { in mana_mr_btree_lookup()
274 *cache = &table[base]; in mana_mr_btree_lookup()
289 bt->table = rte_calloc_socket("MANA B-tree table", in mana_mr_btree_init()
293 if (!bt->table) { in mana_mr_btree_init()
[all …]
/dpdk/doc/guides/sample_app_ug/
H A Dtest_pipeline.rst8 Its purpose is to demonstrate the performance of single-table DPDK pipelines.
17 * Core B ("Pipeline core") implements a single-table DPDK pipeline
20 processes it according to the actions configured in the table entries that
58 :numref:`table_test_pipeline_1` describes the table types used and how they are populated.
75 .. table:: Table Types
86 …| 2 | stub | Stub table. Core B is implementing the same pass-through | N/A …
89 …| | | stub table for each input NIC port. | …
92 …| 3 | hash-[spec]-8-lru | LRU hash table with 8-byte key size and 16 million | 16 m…
93 … | entries. | hash table with the following…
97 … | The action configured for all table entries is |
[all …]
H A Dip_pipeline.rst134 …to/from given table of a specific pipeline owned by the current data plane thread, read statistics…
143 .. table:: Pipeline examples provided with the application
152 …| a simple pass-through | | | 5. Pipeline table
153 …| connection between | | | 6. Pipeline port in table
155 …| ports. | | | 8. Pipeline table rule add …
161 …| | * Offset = 278 | | 5. Pipeline table
162 …| | * Table size = 64K | | 6. Pipeline port in table
164 …| | | | 8. Pipeline table rule add defau…
165 …| | | | 9. Pipeline table rule add …
171 …| | * Table size = 4K | | 5. Pipeline table
[all …]
/dpdk/lib/member/
H A Drte_member_heap.h47 hash_table_insert(const void *key, int value, int key_len, struct hash *table) in hash_table_insert() argument
49 uint32_t hash = MEMBER_HASH_FUNC(key, key_len, table->seed); in hash_table_insert()
50 uint16_t idx = hash % table->bkt_cnt; in hash_table_insert()
55 if (table->buckets[idx].idx[i] == 0) { in hash_table_insert()
56 table->buckets[idx].idx[i] = value; in hash_table_insert()
57 table->buckets[idx].sig[i] = sig; in hash_table_insert()
58 table->num_item++; in hash_table_insert()
67 hash_table_update(const void *key, int old_value, int value, int key_len, struct hash *table) in hash_table_update() argument
69 uint32_t hash = MEMBER_HASH_FUNC(key, key_len, table->seed); in hash_table_update()
70 uint16_t idx = hash % table->bkt_cnt; in hash_table_update()
[all …]
/dpdk/examples/ip_pipeline/
H A Dpipeline.h154 struct table { struct
168 struct table table[RTE_PIPELINE_TABLE_MAX]; member
402 table_rule_find(struct table *table,
406 table_rule_add(struct table *table,
410 table_rule_add_bulk(struct table *table,
415 table_rule_delete(struct table *tabl
155 paramstable global() argument
156 aptable global() argument
157 atable global() argument
158 rulestable global() argument
159 rule_defaulttable global() argument
[all...]
/dpdk/examples/pipeline/examples/
H A Dselector.spec4 ; A selector table is made out of groups of weighted members, with a given member potentially part
11 ; Normally, an action selector FIB is built with a routing table (the base table), a selector table
12 ; (the group table) and a next hop table (the member table). One of the routing table actions sets
13 ; up the group ID meta-data field used as the index into the group table, which produces the member
14 ; ID meta-data field, i.e. the next hop ID that is used as the index into the next hop table. The
22 ; In this simple example, the base table and the member table are striped out in order to focus
23 ; exclusively on illustrating the selector table. The group_id is read from the destination MAC
25 ; destination IP address fields. The member_id produced by the selector table is used to identify
91 table s

1234567