Summary
The tests conformance_arena_constraints fail on a GNU Hurd machine where no NUMA support is available.
This is caused by the code in test/conformance/conformance_arena_constraints.cpp in the TEST_CASE("Test NUMA topology traversal correctness") method where numa_info.index is compared to numa_id, and the former is -1 while the latter is 0. I am unsure what the proper fix is, but one way to fix it is to change src/tbbbind/tbb_bind.cpp method numa_topology_parsing() where changing "numa_indexes_list.push_back(numa_nodes_count == 0 ? -1 : 0);" to "numa_indexes_list.push_back(numa_nodes_count == 0 ? 0 : 0);" make the tests succeed. It can also be fixed by changing test/conformance/conformance_arena_constraints.cpp method TEST_CASE("Test NUMA topology traversal correctness") and changing "return numa_info.index == numa_id;" to "return -1 == numa_info.index || numa_info.index == numa_id;". I do not understand the code enough to know if these changes make sense or if the fix should be applied elsewhere.
Version
The current master branch with patches from PR #2025 #2026 #2028 #2029 #2038.
Environment
Debian GNU Hurd sid edition using VM with gcc 15.
Observed Behavior
The tests fail.
Expected Behavior
The tests should succeed.
Steps To Reproduce
Make Virtual Manager VM, install Debian GNU Herd, adjust VM XML to enable HPET, fetch build dependencies and run 'cmake ; make; make test'.
Summary
The tests conformance_arena_constraints fail on a GNU Hurd machine where no NUMA support is available.
This is caused by the code in test/conformance/conformance_arena_constraints.cpp in the TEST_CASE("Test NUMA topology traversal correctness") method where numa_info.index is compared to numa_id, and the former is -1 while the latter is 0. I am unsure what the proper fix is, but one way to fix it is to change src/tbbbind/tbb_bind.cpp method numa_topology_parsing() where changing "numa_indexes_list.push_back(numa_nodes_count == 0 ? -1 : 0);" to "numa_indexes_list.push_back(numa_nodes_count == 0 ? 0 : 0);" make the tests succeed. It can also be fixed by changing test/conformance/conformance_arena_constraints.cpp method TEST_CASE("Test NUMA topology traversal correctness") and changing "return numa_info.index == numa_id;" to "return -1 == numa_info.index || numa_info.index == numa_id;". I do not understand the code enough to know if these changes make sense or if the fix should be applied elsewhere.
Version
The current master branch with patches from PR #2025 #2026 #2028 #2029 #2038.
Environment
Debian GNU Hurd sid edition using VM with gcc 15.
Observed Behavior
The tests fail.
Expected Behavior
The tests should succeed.
Steps To Reproduce
Make Virtual Manager VM, install Debian GNU Herd, adjust VM XML to enable HPET, fetch build dependencies and run 'cmake ; make; make test'.