On Thu, 22 Jan 2026 at 01:54, Stephen Hemminger <[email protected]> wrote: > > This series addresses several categories of test infrastructure issues: > > 1. Spinloop synchronization fixes (patch 1) > > Tests using tight spinloops for thread synchronization cause sporadic > failures on high core count AMD Zen systems. The loops starve SMT > sibling threads and create race conditions. Adding rte_pause() to > all synchronization spinloops fixes these issues. > > 2. Test scaling for high core count systems (patches 2-5) > > Several tests use fixed iteration counts that cause timeouts on > systems with many cores due to increased lock contention. A new > helper function test_scale_iterations() scales iterations inversely > with core count to maintain roughly constant test duration. > > Affected tests: > - atomic_autotest (Bugzilla #952) > - mcslock_autotest > - stack_autotest > - timer_secondary_autotest > > 3. BPF test fixes (patches 6-8, 14) > > - Fix missing error handling in ELF load tests > - Fix clang 20+ compatibility by restricting to BPF v2 instruction > set (Bugzilla #1844) > - Skip ELF test gracefully if null PMD is disabled > - Fix incorrect size parameter in Rx/Tx load tests > > 4. Parallel test execution fixes (patches 9-10) > > Multiple tests colliding on the default "rte" file-prefix causes EAL > initialization failures when running tests in parallel. Restore unique > file-prefix for all fast-tests on Linux, including a separate prefix > for trace_autotest_with_traces. > > 5. Test skip conditions (patches 11-13) > > Tests that depend on optional drivers (null PMD, eventdev) should skip > gracefully when those drivers are disabled via -Ddisable_drivers= > rather than failing. > > v4 - add additional scaling for failures reported on 96 core system > - gracefully handle case where null PMD disabled in build > > Stephen Hemminger (14): > test: add pause to synchronization spinloops > test: scale atomic test based on core count > test/mcslock: scale test based on number of cores > test/stack: scale test based on number of cores > test/timer: scale test based on number of cores > test/bpf: fix error handling in ELF load tests > test/bpf: fix unsupported BPF instructions in ELF load test > test/bpf: skip ELF test if null PMD disabled > test: add file-prefix for all fast-tests on Linux > test: fix trace_autotest_with_traces parallel execution > test/eventdev: skip test if eventdev driver disabled > test/pcapng: skip test if null driver missing > test/vdev: skip test if no null PMD > test/bpf: pass correct size for Rx/Tx load tests > > app/test/bpf/meson.build | 3 +- > app/test/meson.build | 4 +- > app/test/suites/meson.build | 19 +++++--- > app/test/test.h | 19 ++++++++ > app/test/test_atomic.c | 66 ++++++++++++++++------------ > app/test/test_bpf.c | 13 ++++-- > app/test/test_event_eth_tx_adapter.c | 11 +++-- > app/test/test_mcslock.c | 10 +++-- > app/test/test_stack.c | 8 ++-- > app/test/test_threads.c | 17 +++---- > app/test/test_timer_secondary.c | 14 +++--- > 11 files changed, 121 insertions(+), 63 deletions(-)
I think there is some overlap with some other merged patches (like a conflict on the meson side). Please check and rebase this series. Thanks. -- David Marchand

