From: Pablo de Lara <pablo.de.lara.gua...@intel.com>

RTE_HASH_KEY_LENGTH_MAX was deprecated, and the hash table
actually is hosting bigger keys than that size, so key length
has been increased to properly allocate all keys.

Signed-off-by: Pablo de Lara <pablo.de.lara.guarch at intel.com>
Acked-by: Sujith Sankar <ssujith at cisco.com>
---
 drivers/net/enic/enic_clsf.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/enic/enic_clsf.c b/drivers/net/enic/enic_clsf.c
index 9c2abfb..656b25b 100644
--- a/drivers/net/enic/enic_clsf.c
+++ b/drivers/net/enic/enic_clsf.c
@@ -214,7 +214,7 @@ int enic_fdir_add_fltr(struct enic *enic, struct 
rte_eth_fdir_filter *params)
                enic->fdir.stats.add++;
        }

-       pos = rte_hash_add_key(enic->fdir.hash, (void *)key);
+       pos = rte_hash_add_key(enic->fdir.hash, params);
        enic->fdir.nodes[pos] = key;
        return 0;
 }
@@ -244,7 +244,7 @@ int enic_clsf_init(struct enic *enic)
        struct rte_hash_parameters hash_params = {
                .name = "enicpmd_clsf_hash",
                .entries = ENICPMD_CLSF_HASH_ENTRIES,
-               .key_len = RTE_HASH_KEY_LENGTH_MAX,
+               .key_len = sizeof(struct rte_eth_fdir_filter),
                .hash_func = DEFAULT_HASH_FUNC,
                .hash_func_init_val = 0,
                .socket_id = SOCKET_0,
-- 
2.5.1

Reply via email to