Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for unseeded integer hashing in hash-table #3801

Closed
wants to merge 1 commit into from

Conversation

Alan-Jowett
Copy link
Member

Description

This pull request introduces changes to the eBPF runtime to add support for unseeded integer hashing in hash tables. The most important changes include adding new hash functions for integer keys, updating the hash table creation options, and modifying the hash table's bucket index computation to use the new hash functions.

Enhancements to Hash Table Functionality:

  • libs/runtime/ebpf_hash_table.c: Added new functions _ebpf_integer_hash_function_32bit and _ebpf_integer_hash_function_64bit for hashing 32-bit and 64-bit integer keys, respectively. Updated _ebpf_hash_table_compute_bucket_index to use these functions when use_integer_hashing is enabled. [1] [2]

  • libs/runtime/ebpf_hash_table.c: Added a new field use_integer_hashing to the struct _ebpf_hash_table to indicate whether integer hashing should be used.

  • libs/runtime/ebpf_hash_table.c: Modified ebpf_hash_table_create to initialize the use_integer_hashing field based on the creation options.

Updates to Hash Table Creation Options:

  • libs/runtime/ebpf_hash_table.h: Added a new field use_unseeded_integer_hashing to ebpf_hash_table_creation_options_t to specify whether unseeded integer hashing should be used for the hash table.

Application of New Hashing Option:

Testing

CI/CD

Documentation

No.

Installation

No.

@Alan-Jowett Alan-Jowett deleted the issue3800 branch August 29, 2024 19:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant