MCPcopy Create free account
hub / github.com/F-Stack/f-stack / test_toeplitz_hash_rand_data

Function test_toeplitz_hash_rand_data

dpdk/app/test/test_thash.c:238–292  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

236};
237
238static int
239test_toeplitz_hash_rand_data(void)
240{
241 uint32_t data[2][DATA_SZ];
242 uint32_t scalar_data[2][DATA_SZ];
243 uint32_t hash[HASH_IDXES] = { 0 };
244 uint64_t rss_key_matrixes[RTE_DIM(default_rss_key)];
245 int i, j;
246 uint8_t *bulk_data[2];
247
248 if (!rte_thash_gfni_supported())
249 return TEST_SKIPPED;
250
251 rte_thash_complete_matrix(rss_key_matrixes, default_rss_key,
252 RTE_DIM(default_rss_key));
253
254 for (i = 0; i < 2; i++)
255 bulk_data[i] = (uint8_t *)data[i];
256
257 for (i = 0; i < ITER; i++) {
258 for (j = 0; j < DATA_SZ; j++) {
259 data[0][j] = rte_rand();
260 data[1][j] = rte_rand();
261 scalar_data[0][j] = rte_cpu_to_be_32(data[0][j]);
262 scalar_data[1][j] = rte_cpu_to_be_32(data[1][j]);
263 }
264
265 hash[SCALAR_DATA_BUF_1_HASH_IDX] = rte_softrss(scalar_data[0],
266 DATA_SZ, default_rss_key);
267 hash[SCALAR_DATA_BUF_2_HASH_IDX] = rte_softrss(scalar_data[1],
268 DATA_SZ, default_rss_key);
269 hash[GFNI_DATA_BUF_1_HASH_IDX] = rte_thash_gfni(
270 rss_key_matrixes, (uint8_t *)data[0],
271 DATA_SZ * sizeof(uint32_t));
272 hash[GFNI_DATA_BUF_2_HASH_IDX] = rte_thash_gfni(
273 rss_key_matrixes, (uint8_t *)data[1],
274 DATA_SZ * sizeof(uint32_t));
275 rte_thash_gfni_bulk(rss_key_matrixes,
276 DATA_SZ * sizeof(uint32_t), bulk_data,
277 &hash[GFNI_BULK_DATA_BUF_1_HASH_IDX], 2);
278
279 if ((hash[SCALAR_DATA_BUF_1_HASH_IDX] !=
280 hash[GFNI_DATA_BUF_1_HASH_IDX]) ||
281 (hash[SCALAR_DATA_BUF_1_HASH_IDX] !=
282 hash[GFNI_BULK_DATA_BUF_1_HASH_IDX]) ||
283 (hash[SCALAR_DATA_BUF_2_HASH_IDX] !=
284 hash[GFNI_DATA_BUF_2_HASH_IDX]) ||
285 (hash[SCALAR_DATA_BUF_2_HASH_IDX] !=
286 hash[GFNI_BULK_DATA_BUF_2_HASH_IDX]))
287
288 return -TEST_FAILED;
289 }
290
291 return TEST_SUCCESS;
292}
293
294enum {
295 RSS_V4_IDX,

Callers

nothing calls this directly

Calls 6

rte_thash_gfni_supportedFunction · 0.85
rte_randFunction · 0.85
rte_softrssFunction · 0.85
rte_thash_gfniFunction · 0.50
rte_thash_gfni_bulkFunction · 0.50

Tested by

no test coverage detected