The function rte_jhash2() was renamed rte_jhash_32b and
macros RTE_HASH_KEY_LENGTH_MAX and RTE_HASH_BUCKET_ENTRIES_MAX
were tagged as deprecated, so they can be removed in 2.2.
RTE_HASH_KEY_LENGTH is replaced in unit tests by an internal macro
for the memory allocation of all keys used.
The library version number is incremented.
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
static rte_hash_function hashtest_funcs[] = {rte_jhash, rte_hash_crc};
static uint32_t hashtest_initvals[] = {0};
static uint32_t hashtest_key_lens[] = {0, 2, 4, 5, 6, 7, 8, 10, 11, 15, 16, 21, 31, 32, 33, 63, 64};
static rte_hash_function hashtest_funcs[] = {rte_jhash, rte_hash_crc};
static uint32_t hashtest_initvals[] = {0};
static uint32_t hashtest_key_lens[] = {0, 2, 4, 5, 6, 7, 8, 10, 11, 15, 16, 21, 31, 32, 33, 63, 64};
/******************************************************************************/
#define LOCAL_FBK_HASH_ENTRIES_MAX (1 << 15)
/******************************************************************************/
#define LOCAL_FBK_HASH_ENTRIES_MAX (1 << 15)
static void run_hash_func_test(rte_hash_function f, uint32_t init_val,
uint32_t key_len)
{
static void run_hash_func_test(rte_hash_function f, uint32_t init_val,
uint32_t key_len)
{
- static uint8_t key[RTE_HASH_KEY_LENGTH_MAX];
+ static uint8_t key[MAX_KEYSIZE];
static int test_average_table_utilization(void)
{
struct rte_hash *handle;
static int test_average_table_utilization(void)
{
struct rte_hash *handle;
- uint8_t simple_key[RTE_HASH_KEY_LENGTH_MAX];
+ uint8_t simple_key[MAX_KEYSIZE];
unsigned i, j;
unsigned added_keys, average_keys_added = 0;
int ret;
unsigned i, j;
unsigned added_keys, average_keys_added = 0;
int ret;
{
struct rte_hash *handle;
unsigned i;
{
struct rte_hash *handle;
unsigned i;
- uint8_t keys[NUM_ENTRIES][RTE_HASH_KEY_LENGTH_MAX];
+ uint8_t keys[NUM_ENTRIES][MAX_KEYSIZE];
const void *next_key;
void *next_data;
void *data[NUM_ENTRIES];
const void *next_key;
void *next_data;
void *data[NUM_ENTRIES];
* from the array entries is tested.
*/
#define HASHTEST_ITERATIONS 1000000
* from the array entries is tested.
*/
#define HASHTEST_ITERATIONS 1000000
static rte_hash_function hashtest_funcs[] = {rte_jhash, rte_hash_crc};
static uint32_t hashtest_initvals[] = {0, 0xdeadbeef};
static uint32_t hashtest_key_lens[] = {
static rte_hash_function hashtest_funcs[] = {rte_jhash, rte_hash_crc};
static uint32_t hashtest_initvals[] = {0, 0xdeadbeef};
static uint32_t hashtest_key_lens[] = {
run_hash_func_perf_test(uint32_t key_len, uint32_t init_val,
rte_hash_function f)
{
run_hash_func_perf_test(uint32_t key_len, uint32_t init_val,
rte_hash_function f)
{
- static uint8_t key[HASHTEST_ITERATIONS][RTE_HASH_KEY_LENGTH_MAX];
+ static uint8_t key[HASHTEST_ITERATIONS][MAX_KEYSIZE];
uint64_t ticks, start, end;
unsigned i, j;
uint64_t ticks, start, end;
unsigned i, j;
{
unsigned i;
uint32_t swap_idx;
{
unsigned i;
uint32_t swap_idx;
- uint8_t temp_key[RTE_HASH_KEY_LENGTH_MAX];
+ uint8_t temp_key[MAX_KEYSIZE];
hash_sig_t temp_signature;
int32_t temp_position;
hash_sig_t temp_signature;
int32_t temp_position;
There is no backward compatibility planned from release 2.2.
All binaries will need to be rebuilt from release 2.2.
There is no backward compatibility planned from release 2.2.
All binaries will need to be rebuilt from release 2.2.
-* The Macros RTE_HASH_BUCKET_ENTRIES_MAX and RTE_HASH_KEY_LENGTH_MAX are
- deprecated and will be removed with version 2.2.
-
-* The function rte_jhash2 is deprecated and should be removed.
-
* The following fields have been deprecated in rte_eth_stats:
imissed, ibadcrc, ibadlen, imcasts, fdirmatch, fdirmiss,
tx_pause_xon, rx_pause_xon, tx_pause_xoff, rx_pause_xoff
* The following fields have been deprecated in rte_eth_stats:
imissed, ibadcrc, ibadlen, imcasts, fdirmatch, fdirmiss,
tx_pause_xon, rx_pause_xon, tx_pause_xoff, rx_pause_xoff
* The deprecated ACL API ipv4vlan is removed.
* The deprecated ACL API ipv4vlan is removed.
+* The deprecated hash function rte_jhash2() is removed.
+ It was replaced by rte_jhash_32b().
+
* The deprecated KNI functions are removed:
rte_kni_create(), rte_kni_get_port_id() and rte_kni_info_get().
* The deprecated KNI functions are removed:
rte_kni_create(), rte_kni_get_port_id() and rte_kni_info_get().
librte_cmdline.so.1
librte_distributor.so.1
+ librte_eal.so.2
librte_cmdline.so.1
librte_distributor.so.1
+ librte_eal.so.2
librte_ip_frag.so.1
librte_ivshmem.so.1
librte_jobstats.so.1
librte_ip_frag.so.1
librte_ivshmem.so.1
librte_jobstats.so.1
EXPORT_MAP := rte_hash_version.map
EXPORT_MAP := rte_hash_version.map
# all source are stored in SRCS-y
SRCS-$(CONFIG_RTE_LIBRTE_HASH) := rte_cuckoo_hash.c
# all source are stored in SRCS-y
SRCS-$(CONFIG_RTE_LIBRTE_HASH) := rte_cuckoo_hash.c
/** Maximum size of hash table that can be created. */
#define RTE_HASH_ENTRIES_MAX (1 << 30)
/** Maximum size of hash table that can be created. */
#define RTE_HASH_ENTRIES_MAX (1 << 30)
-/** @deprecated Maximum bucket size that can be created. */
-#define RTE_HASH_BUCKET_ENTRIES_MAX 4
-
-/** @deprecated Maximum length of key that can be used. */
-#define RTE_HASH_KEY_LENGTH_MAX 64
-
/** Maximum number of characters in hash name.*/
#define RTE_HASH_NAMESIZE 32
/** Maximum number of characters in hash name.*/
#define RTE_HASH_NAMESIZE 32
- * Same as rte_jhash2, but takes two seeds and return two uint32_ts.
+ * Same as rte_jhash_32b, but takes two seeds and return two uint32_ts.
* pc and pb must be non-null, and *pc and *pb must both be initialized
* with seeds. If you pass in (*pb)=0, the output (*pc) will be
* pc and pb must be non-null, and *pc and *pb must both be initialized
* with seeds. If you pass in (*pb)=0, the output (*pc) will be
- * the same as the return value from rte_jhash2.
+ * the same as the return value from rte_jhash_32b.
*
* @param k
* Key to calculate hash of.
*
* @param k
* Key to calculate hash of.
-static inline uint32_t
-__attribute__ ((deprecated))
-rte_jhash2(const uint32_t *k, uint32_t length, uint32_t initval)
-{
- uint32_t initval2 = 0;
-
- rte_jhash_32b_2hashes(k, length, &initval, &initval2);
-
- return initval;
-}
-
static inline uint32_t
__rte_jhash_3words(uint32_t a, uint32_t b, uint32_t c, uint32_t initval)
{
static inline uint32_t
__rte_jhash_3words(uint32_t a, uint32_t b, uint32_t c, uint32_t initval)
{