Repository navigation
ci: run Linux video output tests under Xvfb - #6932
Conversation
|
I manually compared both |
|
I ran this PR's Linux steps on a local host: Ubuntu 24.04.4, CMake/CTest 3.28.3, Mesa 25.2.8, base
Two things would turn the Linux job red after merge:
The new tests in |
3ef7790 to
962c933
Compare
|
Thanks for the exact JUnit report and main comparison. I fixed the |
|
Re-ran the updated head on the same host:
The Counting only |
|
Thanks for catching this with the full Xvfb rerun. I updated |
|
CI has now completed on |
|
Re-ran the Linux job on
These lines depend on the host and driver, so an allow-list will keep missing some. An alternative would be to look only at the lines that start with |
|
Sorry, my excerpt above was misleading: it was only the tail of Full
|
|
To untangle my last three comments: they all come from the same host and the same JUnit output. The full picture is the 22 start-up lines in the last one; the three lines in my first comment were only its tail, which is why the allow-list in They also end with two different suggestions, sorry for that. Either works on the real output; the difference is what happens to the
Your call. I'll re-run whichever you pick on this host with llvmpipe and the RTX. |
|
Thanks for the full llvmpipe and RTX logs. I pushed |
|
Reran
So the checker now accepts the real output on both hosts, including the variable startup lines around the The one RTX failure was |
|
Thanks for the rerun on llvmpipe and the RTX 4000 Ada. The skip checker accepts both new JUnit sets, and the full suite reports 1631/1631 on llvmpipe and 1630/1631 on the RTX host, with the remaining video test skipped because the display does not provide 120 Hz. That makes the prior rejected-skip-file issue reproducible and fixed while preserving the expected display limitation. |
|
Thanks, the checker changes look right; Before merging we need one more data point, because the Linux job only runs on pushes to main and on dispatches (which use main's workflow file), so this branch's change can't run in CI before it lands. The reruns above were on |
7f60c8a to
acb8190
Compare
|
I rebased the four original MarcZX100-authored commits onto current |
|
Update on current head |
What
Run the Linux test suite with SDL on X11 under Xvfb so Vulkan-backed VideoOut tests can create a display surface in CI. Configure the Linux build for the X11 VideoOut test driver, use Mesa llvmpipe, and make Linux skip validation fail when a test skips only because no display is available. This addresses the coverage gap reported in #6899.
Tested
acb8190919, based on currentmain587bb343:python3 -I tools/tests/test_check_skips.py— 23 tests passed.python3 tools/check_conventions.py --base upstream/main --head HEADandgit diff --check upstream/main...HEADpass.video_out_flip_testsbinary aborts at the CPU feature guard before assertions (Xeon E5-1620 v2 lacks LZCNT, BMI1/2, MOVBE, AVX2 and FMA). The repository's Linux runner is self-hosted; the PR Build event skips it, and workflow dispatch requires repository admin access that I do not have. No runtime pass is claimed onacb8190919.7f60c8a72, merged intomainf3bb6a4f8: under Xvfb with llvmpipe, Marco-Scheffler reported 1,631/1,631 tests andcheck_skips.py --job linuxaccepted 54 expected skips. On the RTX 4000 Ada run, the checker accepted both earlier and new JUnit files; the full suite was 1,630/1,631 due to an unrelatedlinux_gnu_segmentsparallel timeout, which passed 10/10 when run alone. This evidence predates the current rebase and is not presented as validation ofacb8190919.Checklist
main; no other open PR implements the same functions