[dpdk-dev] [PATCH v2 2/4] test/hash: change multiwriter test to use jhash

Yipeng Wang yipeng1.wang at intel.com
Wed Oct 24 20:09:28 CEST 2018


With sequential key, the test will cover more corner
cases with jhash instead of crc hash, since jhash
generates more random hash pattern on sequential key.
It is useful for functional verification.

Signed-off-by: Yipeng Wang <yipeng1.wang at intel.com>
---
 test/test/test_hash_multiwriter.c | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/test/test/test_hash_multiwriter.c b/test/test/test_hash_multiwriter.c
index 6a3eb10..456bc5f 100644
--- a/test/test/test_hash_multiwriter.c
+++ b/test/test/test_hash_multiwriter.c
@@ -12,6 +12,7 @@
 #include <rte_malloc.h>
 #include <rte_random.h>
 #include <rte_spinlock.h>
+#include <rte_jhash.h>
 
 #include "test.h"
 
@@ -31,6 +32,9 @@
 
 #define RTE_APP_TEST_HASH_MULTIWRITER_FAILED 0
 
+/* Use jhash or crc hash */
+#define USE_JHASH 1
+
 struct {
 	uint32_t *keys;
 	uint32_t *found;
@@ -108,10 +112,14 @@ test_hash_multiwriter(void)
 	struct rte_hash_parameters hash_params = {
 		.entries = nb_entries,
 		.key_len = sizeof(uint32_t),
-		.hash_func = rte_hash_crc,
 		.hash_func_init_val = 0,
 		.socket_id = rte_socket_id(),
 	};
+	if (USE_JHASH)
+		hash_params.hash_func = rte_jhash;
+	else
+		hash_params.hash_func = rte_hash_crc;
+
 	if (use_htm)
 		hash_params.extra_flag =
 			RTE_HASH_EXTRA_FLAGS_TRANS_MEM_SUPPORT
-- 
2.7.4



More information about the dev mailing list