test/atomic: fix 128-bit atomic test with many cores
When checking the results of the rte_atomic128_cmp_exchange() function, current code compares the values of a uint32_t and a uint64_t variable. If the number of lcores used by the test is large, or the value of the iteration count N is increased, the variable size mismatch can cause a false test failure. Modify the comparison to compare uint64_t values. Fixes: fa3253c534b1 ("test/atomic: add 128-bit atomic compare exchange test") Cc: stable@dpdk.org Signed-off-by: David Christensen <drc@linux.vnet.ibm.com> Tested-by: Ruifeng Wang <ruifeng.wang@arm.com> Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
This commit is contained in:
parent
b698651b91
commit
17a042376b
@ -591,7 +591,7 @@ test_atomic(void)
|
||||
rte_atomic32_clear(&synchro);
|
||||
|
||||
iterations = count128.val[0] - count128.val[1];
|
||||
if (iterations != 4*N*(rte_lcore_count()-1)) {
|
||||
if (iterations != (uint64_t)4*N*(rte_lcore_count()-1)) {
|
||||
printf("128-bit compare and swap failed\n");
|
||||
return -1;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user