Home
last modified time | relevance | path

Searched refs:hash (Results 1 – 25 of 272) sorted by relevance

1234567891011

/dpdk/app/test/
H A Dtest_hash_functions.c150 uint32_t hash; in verify_precalculated_hash_func_tests() local
190 uint32_t hash, hash32; in verify_jhash_32bits() local
205 if (hash != hash32) { in verify_jhash_32bits()
208 hash, hash32); in verify_jhash_32bits()
227 uint32_t hash, hash_words; in verify_jhash_words() local
235 if (hash != hash_words) { in verify_jhash_words()
238 hash, hash_words); in verify_jhash_words()
244 if (hash != hash_words) { in verify_jhash_words()
247 hash, hash_words); in verify_jhash_words()
253 if (hash != hash_words) { in verify_jhash_words()
[all …]
H A Dtest_thash.c243 uint32_t hash[HASH_IDXES] = { 0 }; in test_toeplitz_hash_rand_data() local
277 &hash[GFNI_BULK_DATA_BUF_1_HASH_IDX], 2); in test_toeplitz_hash_rand_data()
279 if ((hash[SCALAR_DATA_BUF_1_HASH_IDX] != in test_toeplitz_hash_rand_data()
280 hash[GFNI_DATA_BUF_1_HASH_IDX]) || in test_toeplitz_hash_rand_data()
281 (hash[SCALAR_DATA_BUF_1_HASH_IDX] != in test_toeplitz_hash_rand_data()
282 hash[GFNI_BULK_DATA_BUF_1_HASH_IDX]) || in test_toeplitz_hash_rand_data()
283 (hash[SCALAR_DATA_BUF_2_HASH_IDX] != in test_toeplitz_hash_rand_data()
284 hash[GFNI_DATA_BUF_2_HASH_IDX]) || in test_toeplitz_hash_rand_data()
285 (hash[SCALAR_DATA_BUF_2_HASH_IDX] != in test_toeplitz_hash_rand_data()
286 hash[GFNI_BULK_DATA_BUF_2_HASH_IDX])) in test_toeplitz_hash_rand_data()
[all …]
H A Dtest_thash_perf.c46 volatile uint32_t hash = 0; in run_rss_calc() local
52 hash ^= rte_softrss(tuples[j], len / in run_rss_calc()
55 hash ^= rte_softrss_be(tuples[j], len / in run_rss_calc()
58 hash ^= rte_thash_gfni((const uint64_t *)key, in run_rss_calc()
65 RTE_SET_USED(hash); in run_rss_calc()
H A Dtest_distributor.c139 bufs[i]->hash.usr = 0; in sanity_test()
172 bufs[i]->hash.usr = (i & 1) << 8; in sanity_test()
201 bufs[i]->hash.usr = i+1; in sanity_test()
243 many_bufs[i]->hash.usr = i << 2; in sanity_test()
350 bufs[j]->hash.usr = (i+j) << 1; in sanity_test_with_mbuf_alloc()
466 bufs[i]->hash.usr = 1; in sanity_test_with_worker_shutdown()
485 bufs2[i]->hash.usr = 1; in sanity_test_with_worker_shutdown()
546 bufs[i]->hash.usr = 0; in test_flush_with_worker_shutdown()
650 bufs[0 * burst + i]->hash.usr = 1 << shift; in sanity_mark_test()
651 bufs[1 * burst + i]->hash.usr = ((i < burst / 2) ? 1 : 2) in sanity_mark_test()
[all …]
H A Dtest_rcu_qsbr_perf.c286 struct rte_hash *hash = NULL; in test_rcu_qsbr_hash_reader() local
295 hash = h; in test_rcu_qsbr_hash_reader()
305 if (rte_hash_lookup_data(hash, keys + i, in test_rcu_qsbr_hash_reader()
331 struct rte_hash *hash = NULL; in init_hash() local
345 hash = rte_hash_create(&hash_params); in init_hash()
346 if (hash == NULL) { in init_hash()
369 if (rte_hash_add_key_data(hash, keys + i, in init_hash()
375 return hash; in init_hash()
/dpdk/drivers/common/cnxk/
H A Droc_hash.c68 hash[0] = htobe32(A); in roc_hash_sha1_gen()
69 hash[1] = htobe32(B); in roc_hash_sha1_gen()
70 hash[2] = htobe32(C); in roc_hash_sha1_gen()
71 hash[3] = htobe32(D); in roc_hash_sha1_gen()
72 hash[4] = htobe32(E); in roc_hash_sha1_gen()
155 hash[0] = htobe32(A); in roc_hash_sha256_gen()
156 hash[1] = htobe32(B); in roc_hash_sha256_gen()
157 hash[2] = htobe32(C); in roc_hash_sha256_gen()
158 hash[3] = htobe32(D); in roc_hash_sha256_gen()
159 hash[4] = htobe32(E); in roc_hash_sha256_gen()
[all …]
H A Droc_hash.h12 void __roc_api roc_hash_sha1_gen(uint8_t *msg, uint32_t *hash);
13 void __roc_api roc_hash_sha256_gen(uint8_t *msg, uint32_t *hash);
14 void __roc_api roc_hash_sha512_gen(uint8_t *msg, uint64_t *hash, int hash_size);
/dpdk/lib/ipsec/
H A Dipsec_sad.c38 struct rte_hash *hash[RTE_IPSEC_SAD_KEY_TYPE_MASK]; member
96 sad->hash[RTE_IPSEC_SAD_SPI_ONLY], key, in EAL_REGISTER_TAILQ()
202 sad->hash[RTE_IPSEC_SAD_SPI_ONLY], key, in del_specific()
207 sad->hash[RTE_IPSEC_SAD_SPI_ONLY], key, in del_specific()
241 sad->hash[key_type], key, in rte_ipsec_sad_del()
312 if (sad->hash[RTE_IPSEC_SAD_SPI_ONLY] == NULL) { in rte_ipsec_sad_create()
329 if (sad->hash[RTE_IPSEC_SAD_SPI_DIP] == NULL) { in rte_ipsec_sad_create()
438 rte_hash_free(sad->hash[RTE_IPSEC_SAD_SPI_ONLY]); in rte_ipsec_sad_destroy()
439 rte_hash_free(sad->hash[RTE_IPSEC_SAD_SPI_DIP]); in rte_ipsec_sad_destroy()
515 sad->hash[RTE_IPSEC_SAD_SPI_DIP], in __ipsec_sad_lookup()
[all …]
/dpdk/drivers/net/bnxt/tf_ulp/
H A Dulp_matcher.c13 uint64_t hash; in ulp_matcher_class_hash_calculate() local
19 hash = hi_sig ^ lo_sig; in ulp_matcher_class_hash_calculate()
20 hash = (hash >> BNXT_ULP_CLASS_HID_SHFTR) & BNXT_ULP_CLASS_HID_MASK; in ulp_matcher_class_hash_calculate()
21 return (uint32_t)hash; in ulp_matcher_class_hash_calculate()
28 uint64_t hash; in ulp_matcher_action_hash_calculate() local
34 hash = hi_sig ^ app_id; in ulp_matcher_action_hash_calculate()
35 hash = (hash >> BNXT_ULP_ACT_HID_SHFTR) & BNXT_ULP_ACT_HID_MASK; in ulp_matcher_action_hash_calculate()
36 return (uint32_t)hash; in ulp_matcher_action_hash_calculate()
/dpdk/doc/guides/prog_guide/
H A Dtoeplitz_hash_lib.rst8 to calculate the Toeplitz hash function and to use its properties.
9 The Toeplitz hash function is commonly used in a wide range of NICs
19 Toeplitz hash function API
67 * A pointer to the RSS hash key.
68 * Length of the RSS hash key in bytes.
79 LSB's as the hash from the original tuple.
114 hash value to produce a collision for.
129 to generate an RSS hash key with a uniform hash distribution, if the input
179 * A hash value of the tuple we want to alter.
193 mentioned requirements around the desired hash LSB's.
[all …]
H A Dhash_lib.rst17 The main configuration parameters for the hash table are:
19 * Total number of hash entries in the table
36 …then the entry is removed from the hash table and the position where the entry was found in the ha…
44 … Add / lookup / delete entry with key and precomputed hash: Both the key and its precomputed hash
63 or stored in the hash table itself.
80 The hash library supports multithreading, and the user specifies the needed mode of operation at th…
122 The hash table has two main tables:
134 The Hash Library uses a hash function (configurable) to translate the input key into a 4-byte hash
198 Entry distribution in hash table
204 Therefore, as user adds more entries to the hash table, distribution of the hash values
[all …]
H A Defd_lib.rst42 computation based on the flow key as an input. For example, a hash
78 key, as this is dictated by the hash function.
126 hash functions is searched until the correct hash function that maps the
133 that key with the correct hash function.
198 perfect hash index, a key that has not been inserted before
313 but rather only the hash index for each group.
322 Given a flow key, a hash function (in our implementation CRC hash) is
348 hash index until a non conflicting lookup_table is found.
371 slow, because of perfect hash search as previously discussed).
380 the group id is computed (using CRC hash) and then the hash index for this
[all …]
/dpdk/doc/guides/sample_app_ug/
H A Dtest_pipeline.rst60 The hash tables are pre-populated with 16 million keys.
61 For hash tables, the following parameters can be selected:
63 …mplementation or fixed (specialized) key size implementation (e.g. hash-8-ext or hash-spec-8-ext).…
67 * **Key size (e.g. hash-spec-8-ext or hash-spec-16-ext).**
70 * **Table type (e.g. hash-spec-16-ext or hash-spec-16-lru).**
92 …| 3 | hash-[spec]-8-lru | LRU hash table with 8-byte key size and 16 million | 16 m…
111 …| 4 | hash-[spec]-8-ext | Extendable bucket hash table with 8-byte key size | Same…
115 …5 | hash-[spec]-16-lru | LRU hash table with 16-byte key size and 16 million | 16 mil…
134 …| 6 | hash-[spec]-16-ext | Extendable bucket hash table with 16-byte key size | Same…
138 …7 | hash-[spec]-32-lru | LRU hash table with 32-byte key size and 16 million | 16 mil…
[all …]
H A Dl3_forward.rst25 The lookup method is hash-based, LPM-based or FIB-based
27 When the selected lookup method is hash-based,
28 a hash object is used to emulate the flow classification stage.
73 [--hash-entry-num]
111 * ``--hash-entry-num:`` Optional, specifies the hash entry number in hexadecimal to be setup.
290 … which is used to specify the total hash entry number for all used ports in hash performance test,
303 /* populate the ipv4 hash */
307 /* populate the ipv6 hash */
322 :end-before: >8 End of initialization of hash parameters.
350 :start-after: Performing hash-based lookups. 8<
[all …]
/dpdk/drivers/net/tap/
H A Dtap_bpf_program.c104 __u32 i, j, hash = 0; in rte_softrss_be() local
110 hash ^= ((const __u32 *)def_rss_key)[j] << i | in rte_softrss_be()
117 return hash; in rte_softrss_be()
127 __u32 hash; in rss_l3_l4() local
176 hash = rte_softrss_be((__u32 *)&v4_tuple, key, 3); in rss_l3_l4()
202 hash = rte_softrss_be((__u32 *)&v6_tuple, key, 9); in rss_l3_l4()
207 queue = rsskey->queues[(hash % rsskey->nb_queues) & in rss_l3_l4()
/dpdk/drivers/net/softnic/
H A Drte_eth_softnic_pipeline.c813 struct rte_table_hash_params hash; in softnic_pipeline_table_create() member
901 if (params->match.hash.n_keys == 0) in softnic_pipeline_table_create()
933 pp.hash.name = name; in softnic_pipeline_table_create()
934 pp.hash.key_size = params->match.hash.key_size; in softnic_pipeline_table_create()
935 pp.hash.key_offset = params->match.hash.key_offset; in softnic_pipeline_table_create()
936 pp.hash.key_mask = params->match.hash.key_mask; in softnic_pipeline_table_create()
937 pp.hash.n_keys = params->match.hash.n_keys; in softnic_pipeline_table_create()
938 pp.hash.n_buckets = params->match.hash.n_buckets; in softnic_pipeline_table_create()
939 pp.hash.f_hash = f_hash; in softnic_pipeline_table_create()
940 pp.hash.seed = 0; in softnic_pipeline_table_create()
[all …]
/dpdk/examples/ip_pipeline/
H A Dpipeline.c788 struct rte_table_hash_params hash; in pipeline_table_create() member
875 if (params->match.hash.n_keys == 0) in pipeline_table_create()
907 pp.hash.name = name; in pipeline_table_create()
908 pp.hash.key_size = params->match.hash.key_size; in pipeline_table_create()
909 pp.hash.key_offset = params->match.hash.key_offset; in pipeline_table_create()
910 pp.hash.key_mask = params->match.hash.key_mask; in pipeline_table_create()
911 pp.hash.n_keys = params->match.hash.n_keys; in pipeline_table_create()
912 pp.hash.n_buckets = params->match.hash.n_buckets; in pipeline_table_create()
913 pp.hash.f_hash = f_hash; in pipeline_table_create()
914 pp.hash.seed = 0; in pipeline_table_create()
[all …]
/dpdk/examples/ip_pipeline/examples/
H A Dflow.cli47 pipeline PIPELINE0 table match hash ext key 16 mask 00FF0000FFFFFFFFFFFFFFFFFFFFFFFF offset 278 buc…
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…
60 pipeline PIPELINE0 table 0 rule add match hash ipv4_5tuple 100.0.0.13 200.0.0.13 103 203 6 action f…
H A Dflow_crypto.cli42 pipeline PIPELINE0 table match hash ext key 8 mask FFFFFFFF00000000 offset 282 buckets 1K size 4K a…
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…
/dpdk/drivers/net/mlx5/
H A Dmlx5_rxtx_vec_neon.h207 elts[pos]->hash.fdir.hi = flow_tag; in rxq_cq_decompress_v()
208 elts[pos + 1]->hash.fdir.hi = flow_tag; in rxq_cq_decompress_v()
209 elts[pos + 2]->hash.fdir.hi = flow_tag; in rxq_cq_decompress_v()
254 elts[pos]->hash.fdir.hi = in rxq_cq_decompress_v()
256 elts[pos + 1]->hash.fdir.hi = in rxq_cq_decompress_v()
258 elts[pos + 2]->hash.fdir.hi = in rxq_cq_decompress_v()
260 elts[pos + 3]->hash.fdir.hi = in rxq_cq_decompress_v()
331 elts[pos]->hash.rss = 0; in rxq_cq_decompress_v()
332 elts[pos + 1]->hash.rss = 0; in rxq_cq_decompress_v()
333 elts[pos + 2]->hash.rss = 0; in rxq_cq_decompress_v()
[all …]
H A Dmlx5_rxtx_vec_sse.h192 elts[pos]->hash.fdir.hi = flow_tag; in rxq_cq_decompress_v()
193 elts[pos + 1]->hash.fdir.hi = flow_tag; in rxq_cq_decompress_v()
194 elts[pos + 2]->hash.fdir.hi = flow_tag; in rxq_cq_decompress_v()
239 elts[pos]->hash.fdir.hi = in rxq_cq_decompress_v()
241 elts[pos + 1]->hash.fdir.hi = in rxq_cq_decompress_v()
243 elts[pos + 2]->hash.fdir.hi = in rxq_cq_decompress_v()
245 elts[pos + 3]->hash.fdir.hi = in rxq_cq_decompress_v()
321 elts[pos]->hash.rss = 0; in rxq_cq_decompress_v()
322 elts[pos + 1]->hash.rss = 0; in rxq_cq_decompress_v()
323 elts[pos + 2]->hash.rss = 0; in rxq_cq_decompress_v()
[all …]
/dpdk/drivers/net/i40e/
H A Di40e_rxtx_vec_avx2.c71 rx_pkts[idx_0]->hash.fdir.hi = _mm256_extract_epi32(desc_fdir_data, 0); in desc_fdir_processing_32b()
72 rx_pkts[idx_1]->hash.fdir.hi = _mm256_extract_epi32(desc_fdir_data, 4); in desc_fdir_processing_32b()
194 RTE_BUILD_BUG_ON(offsetof(struct rte_mbuf, hash) != in _recv_raw_pkts_vec_avx2()
465 rx_pkts[i + 0]->hash.fdir.hi = _mm256_extract_epi32(fdir_mb0_1, 3); in _recv_raw_pkts_vec_avx2()
466 rx_pkts[i + 1]->hash.fdir.hi = _mm256_extract_epi32(fdir_mb0_1, 7); in _recv_raw_pkts_vec_avx2()
476 rx_pkts[i + 2]->hash.fdir.hi = _mm256_extract_epi32(fdir_mb2_3, 3); in _recv_raw_pkts_vec_avx2()
477 rx_pkts[i + 3]->hash.fdir.hi = _mm256_extract_epi32(fdir_mb2_3, 7); in _recv_raw_pkts_vec_avx2()
484 rx_pkts[i + 4]->hash.fdir.hi = _mm256_extract_epi32(fdir_mb4_5, 3); in _recv_raw_pkts_vec_avx2()
485 rx_pkts[i + 5]->hash.fdir.hi = _mm256_extract_epi32(fdir_mb4_5, 7); in _recv_raw_pkts_vec_avx2()
492 rx_pkts[i + 6]->hash.fdir.hi = _mm256_extract_epi32(fdir_mb6_7, 3); in _recv_raw_pkts_vec_avx2()
[all …]
H A Di40e_rxtx_vec_sse.c137 rx_pkt[0]->hash.fdir.hi = _mm_extract_epi32(v_fdir_ids, 0); in descs_to_fdir_32b()
138 rx_pkt[1]->hash.fdir.hi = _mm_extract_epi32(v_fdir_ids, 1); in descs_to_fdir_32b()
139 rx_pkt[2]->hash.fdir.hi = _mm_extract_epi32(v_fdir_ids, 2); in descs_to_fdir_32b()
140 rx_pkt[3]->hash.fdir.hi = _mm_extract_epi32(v_fdir_ids, 3); in descs_to_fdir_32b()
184 rx_pkt[0]->hash.fdir.hi = _mm_extract_epi32(v_fdir_ids, 0); in descs_to_fdir_16b()
185 rx_pkt[1]->hash.fdir.hi = _mm_extract_epi32(v_fdir_ids, 1); in descs_to_fdir_16b()
186 rx_pkt[2]->hash.fdir.hi = _mm_extract_epi32(v_fdir_ids, 2); in descs_to_fdir_16b()
187 rx_pkt[3]->hash.fdir.hi = _mm_extract_epi32(v_fdir_ids, 3); in descs_to_fdir_16b()
434 RTE_BUILD_BUG_ON(offsetof(struct rte_mbuf, hash) != in _recv_raw_pkts_vec()
/dpdk/lib/mbuf/
H A Drte_mbuf.h1100 mdst->hash = msrc->hash; in __rte_pktmbuf_copy_hdr()
1873 return m->hash.sched.queue_id; in rte_mbuf_sched_queue_get()
1882 return m->hash.sched.traffic_class; in rte_mbuf_sched_traffic_class_get()
1891 return m->hash.sched.color; in rte_mbuf_sched_color_get()
1911 struct rte_mbuf_sched sched = m->hash.sched; in rte_mbuf_sched_get()
1924 m->hash.sched.queue_id = queue_id; in rte_mbuf_sched_queue_set()
1933 m->hash.sched.traffic_class = traffic_class; in rte_mbuf_sched_traffic_class_set()
1942 m->hash.sched.color = color; in rte_mbuf_sched_color_set()
1962 m->hash.sched = (struct rte_mbuf_sched){ in rte_mbuf_sched_set()
/dpdk/app/test-pmd/
H A Dutil.c160 (unsigned int) mb->hash.rss); in dump_pkt_burst()
169 "ID=0x%x", mb->hash.fdir.hi); in dump_pkt_burst()
173 mb->hash.fdir.hi, mb->hash.fdir.lo); in dump_pkt_burst()
177 mb->hash.fdir.hash, mb->hash.fdir.id); in dump_pkt_burst()

1234567891011