8ea4143883
Add dedicated parameter structure for cuckoo hash. The cuckoo hash from
librte_hash uses slightly different prototype for the hash function (no
key_mask parameter, 32-bit seed and return value) that require either
of the following approaches:
1/ Function pointer conversion: gcc 8.1 warning [1], misleading [2]
2/ Union within the parameter structure: pollutes a very generic API
parameter structure with some implementation dependent detail
(i.e. key mask not available for one of the available
implementations)
3/ Using opaque pointer for hash function: same issue from 2/
4/ Different parameter structure: avoid issue from 2/; hopefully,
it won't be long before librte_hash implements the key mask feature,
so the generic API structure could be used.
[1] http://www.dpdk.org/ml/archives/dev/2018-April/094950.html
[2] http://www.dpdk.org/ml/archives/dev/2018-April/096250.html
Fixes:
|
||
---|---|---|
.. | ||
Makefile | ||
meson.build | ||
rte_lru_arm64.h | ||
rte_lru_x86.h | ||
rte_lru.h | ||
rte_table_acl.c | ||
rte_table_acl.h | ||
rte_table_array.c | ||
rte_table_array.h | ||
rte_table_hash_cuckoo.c | ||
rte_table_hash_cuckoo.h | ||
rte_table_hash_ext.c | ||
rte_table_hash_key8.c | ||
rte_table_hash_key16.c | ||
rte_table_hash_key32.c | ||
rte_table_hash_lru.c | ||
rte_table_hash.h | ||
rte_table_lpm_ipv6.c | ||
rte_table_lpm_ipv6.h | ||
rte_table_lpm.c | ||
rte_table_lpm.h | ||
rte_table_stub.c | ||
rte_table_stub.h | ||
rte_table_version.map | ||
rte_table.h |