Skip to content

testing/ostest: Restore the round-robin test defaults. - #3832

Merged
raiden00pl merged 1 commit into
apache:masterfrom
casaroli:ostest-rr-defaults
Oct 11, 2026
Merged

raiden00pl merged 1 commit into
apache:masterfrom
casaroli:ostest-rr-defaults

Conversation

@casaroli

Copy link
Copy Markdown
Contributor

Summary

Since #3809, ostest stops with an assertion in rr_test on qemu-armv8a, and the Linux (arm64-01) CI job fails for every nuttx PR:

rr_test: Roundrobin Failed
dump_assert_info: Assertion failed : at file: roundrobin.c:281 task: ostest

rr_test records which thread finishes each run, and fails if the first CONFIG_TESTING_OSTEST_RR_RUNS runs all come from one thread. With 4 runs over a range of 10000, one thread does all its runs within one time slice (CONFIG_RR_INTERVAL=200), before the other thread finishes a run.

This PR reverts #3809: the defaults go back to a range of 30000 and 10 runs. A slow board can set CONFIG_TESTING_OSTEST_RR_RANGE and CONFIG_TESTING_OSTEST_RR_RUNS lower in its defconfig.

Impact

ostest takes longer again on slow targets that use the defaults.

Testing

nuttx master (284d4d4ea4d), QEMU 11, ostest:

apps qemu-armv8a:citest qemu-armv8a:citest_smp (-smp 4)
master rr_test fails, exit status 256 rr_test fails, exit status 256
this PR rr_test: Done, exit status 0 (2 of 2 runs) rr_test: Done, exit status 0 (2 of 2 runs)

tools/checkpatch.sh -c -u -m -g passes.

This reverts commit 27ecdd7.

rr_test records which thread finishes each run, and fails if the first
CONFIG_TESTING_OSTEST_RR_RUNS runs all come from one thread.  With 4
runs over a range of 10000, one thread on qemu-armv8a does all its
runs within one time slice, before the other thread finishes a run,
and the test stops with an assertion at roundrobin.c:281.  Since that
change, ostest crashes on every qemu-armv8a configuration that CI
tests (arm64-01).

Restore 30000 and 10 runs.  A slow board can set
CONFIG_TESTING_OSTEST_RR_RANGE and CONFIG_TESTING_OSTEST_RR_RUNS lower
in its defconfig.

Assisted-by: Claude Code:claude-opus-5-5
Signed-off-by: Marco Casaroli <marco.casaroli@gmail.com>
@Swatantra-66

Copy link
Copy Markdown
Contributor

Can confirm this also fixes the exact same rr_test: Roundrobin Failed failure on Linux (risc-v-05) (rv-virt64:citest64), which also uses CONFIG_RR_INTERVAL=200

@raiden00pl
raiden00pl merged commit 74df79a into apache:master Oct 11, 2026
78 of 79 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants