| DPDK
    18.11.11
    | 
#include <rte_cuckoo_hash.h>
| Data Fields | |
| char | name [RTE_HASH_NAMESIZE] | 
| uint32_t | entries | 
| uint32_t | num_buckets | 
| struct rte_ring * | free_slots | 
| struct lcore_cache * | local_free_slots | 
| uint32_t key_len | __rte_cache_aligned | 
| uint8_t | hw_trans_mem_support | 
| uint8_t | use_local_cache | 
| uint8_t | readwrite_concur_support | 
| uint8_t | ext_table_support | 
| uint8_t | no_free_on_del | 
| uint8_t | readwrite_concur_lf_support | 
| uint8_t | writer_takes_lock | 
| rte_hash_function | hash_func | 
| uint32_t | hash_func_init_val | 
| rte_hash_cmp_eq_t | rte_hash_custom_cmp_eq | 
| enum cmp_jump_table_case | cmp_jump_table_idx | 
| enum rte_hash_sig_compare_function | sig_cmp_fn | 
| uint32_t | bucket_bitmask | 
| uint32_t | key_entry_size | 
| void * | key_store | 
| struct rte_hash_bucket * | buckets | 
| rte_rwlock_t * | readwrite_lock | 
| struct rte_hash_bucket * | buckets_ext | 
| struct rte_ring * | free_ext_bkts | 
| uint32_t * | tbl_chng_cnt | 
A hash table structure.
Definition at line 159 of file rte_cuckoo_hash.h.
| char name[RTE_HASH_NAMESIZE] | 
Name of the hash.
Definition at line 160 of file rte_cuckoo_hash.h.
| uint32_t entries | 
Total table entries.
Definition at line 161 of file rte_cuckoo_hash.h.
| uint32_t num_buckets | 
Number of buckets in table.
Definition at line 162 of file rte_cuckoo_hash.h.
| struct rte_ring* free_slots | 
Ring that stores all indexes of the free slots in the key table
Definition at line 164 of file rte_cuckoo_hash.h.
| struct lcore_cache* local_free_slots | 
Local cache per lcore, storing some indexes of the free slots
Definition at line 167 of file rte_cuckoo_hash.h.
| uint32_t key_len __rte_cache_aligned | 
Length of hash key.
Definition at line 172 of file rte_cuckoo_hash.h.
| uint8_t hw_trans_mem_support | 
If hardware transactional memory is used.
Definition at line 174 of file rte_cuckoo_hash.h.
| uint8_t use_local_cache | 
If multi-writer support is enabled, use local cache to allocate key-store slots.
Definition at line 176 of file rte_cuckoo_hash.h.
| uint8_t readwrite_concur_support | 
If read-write concurrency support is enabled
Definition at line 180 of file rte_cuckoo_hash.h.
| uint8_t ext_table_support | 
Enable extendable bucket table
Definition at line 182 of file rte_cuckoo_hash.h.
| uint8_t no_free_on_del | 
If key index should be freed on calling rte_hash_del_xxx APIs. If this is set, rte_hash_free_key_with_position must be called to free the key index associated with the deleted entry. This flag is enabled by default.
Definition at line 183 of file rte_cuckoo_hash.h.
| uint8_t readwrite_concur_lf_support | 
If read-write concurrency lock free support is enabled
Definition at line 189 of file rte_cuckoo_hash.h.
| uint8_t writer_takes_lock | 
Indicates if the writer threads need to take lock
Definition at line 191 of file rte_cuckoo_hash.h.
| rte_hash_function hash_func | 
Function used to calculate hash.
Definition at line 193 of file rte_cuckoo_hash.h.
| uint32_t hash_func_init_val | 
Init value used by hash_func.
Definition at line 194 of file rte_cuckoo_hash.h.
| rte_hash_cmp_eq_t rte_hash_custom_cmp_eq | 
Custom function used to compare keys.
Definition at line 195 of file rte_cuckoo_hash.h.
| enum cmp_jump_table_case cmp_jump_table_idx | 
Indicates which compare function to use.
Definition at line 197 of file rte_cuckoo_hash.h.
| enum rte_hash_sig_compare_function sig_cmp_fn | 
Indicates which signature compare function to use.
Definition at line 199 of file rte_cuckoo_hash.h.
| uint32_t bucket_bitmask | 
Bitmask for getting bucket index from hash signature.
Definition at line 201 of file rte_cuckoo_hash.h.
| uint32_t key_entry_size | 
Size of each key entry.
Definition at line 203 of file rte_cuckoo_hash.h.
| void* key_store | 
Table storing all keys and data
Definition at line 205 of file rte_cuckoo_hash.h.
| struct rte_hash_bucket* buckets | 
Table with buckets storing all the hash values and key indexes to the key table.
Definition at line 206 of file rte_cuckoo_hash.h.
| rte_rwlock_t* readwrite_lock | 
Read-write lock thread-safety.
Definition at line 210 of file rte_cuckoo_hash.h.
| struct rte_hash_bucket* buckets_ext | 
Extra buckets array
Definition at line 211 of file rte_cuckoo_hash.h.
| struct rte_ring* free_ext_bkts | 
Ring of indexes of free buckets
Definition at line 212 of file rte_cuckoo_hash.h.
| uint32_t* tbl_chng_cnt | 
Indicates if the hash table changed from last read.
Definition at line 213 of file rte_cuckoo_hash.h.
 1.8.9.1
 1.8.9.1