This series improves the hash library's key comparison performance and portability. The main goals are:
- Hide internal implementation details to prevent future ABI breakage - Enable optimized key comparisons on all architectures (not just x86 and ARM64) - Add specialized compare functions for common small key sizes (2-20 bytes) to avoid memcmp overhead - Improve test coverage and code quality v6 - rebase to main integrate the recent rcu test Stephen Hemminger (7): hash: move table of hash compare functions out of header hash: use static_assert hash: remove spurious warnings in CRC32 init hash: simplify key comparison across architectures hash: add support for common small key sizes app/test: convert hash test to use test suite runner test/hash: add test for key compare functions app/test/test_hash.c | 253 ++++++++++++++++++++++--------- lib/hash/rte_cmp_arm64.h | 62 +------- lib/hash/rte_cmp_generic.h | 35 +++++ lib/hash/rte_cmp_x86.h | 62 +------- lib/hash/rte_cuckoo_hash.c | 301 ++++++++++++++++++++++++++++++++----- lib/hash/rte_cuckoo_hash.h | 84 +---------- lib/hash/rte_hash_crc.c | 8 +- 7 files changed, 491 insertions(+), 314 deletions(-) create mode 100644 lib/hash/rte_cmp_generic.h -- 2.53.0

