rte_hash implementation details

Nadirbek Nurlybekov nurlybekovnt at gmail.com
Thu Feb 29 11:41:33 CET 2024


Hello DPDK Users,

I hope this email finds you all in good spirits. My name is Nadirbek, and
I'm currently in the process of understanding the rte_hash table
implementation. As I explore the codebase and its functionalities, I've
encountered a question regarding a specific aspect of the rte_hash
implementation.

In particular, I'm examining the rte_hash_cuckoo_make_space_mw function,
which is responsible for moving an entry to its secondary bucket to
accommodate a new key. However, I've noticed a potential scenario where the
same entry might be moved multiple times, leading to the situation where
the lookup fails to locate the key in either the primary or secondary
bucket.

Upon reviewing the code, I observed that each bucket has a next pointer,
but it seems to be primarily utilized in extendable buckets. This
observation has prompted me to question whether my understanding of the
implementation is correct or if there's a deliberate design choice behind
this behavior.

I kindly request your assistance in shedding light on this matter. Thank
you all for your time and consideration. I eagerly await your responses and
insights.

Best regards,
Nadirbek Nurlybekov
nurlybekovnt at gmail.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mails.dpdk.org/archives/users/attachments/20240229/d6cef77a/attachment-0001.htm>


More information about the users mailing list