test(vk): the env_on and late readback checks match the render thread's source #622
No reviewers
Labels
No labels
area/accessibility
area/audio
area/input
area/install
area/menu
area/renderer
area/saves
area/upscaling
beanstalk: approved @ 1697603
beanstalk: approved @ 2c5a62e
beanstalk: approved @ 4fd82b7
beanstalk: approved @ 64d6d09
beanstalk: approved @ 6f91fae
beanstalk: approved @ 70a78f9
beanstalk: approved @ 8015c9a
beanstalk: approved @ 8d361dc
beanstalk: approved @ 9d8356e
beanstalk: approved @ abf2227
beanstalk: approved @ d82f202
beanstalk: approved @ e5f1e40
beanstalk: approved @ ee8ab5f
ci: approved
good first issue
gpu/amd
gpu/igpu
gpu/intel
gpu/nvidia
help wanted
kind
bug
kind
chore
kind
docs
kind
feature
kind
performance
kind
question
needs measurements
platform/linux
platform/macos
platform/steam-deck
platform/windows
preview
priority
critical
priority
high
priority
low
regression
status
blocked
status
confirmed
status
duplicate
status
invalid
status
needs-info
status
wontfix
testing wanted
ci: approved
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
MagicBeanDev/Longshot!622
Loading…
Reference in a new issue
No description provided.
Delete branch "zeldaootr/Longshot:fix-stand-ins-after-render-thread"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Type: test · Risk: low · Tested on: Linux, no GPU (game-free checks, g++ 13.3 and clang 23.1.5) · Needs: none
Why
Two game-free checks have failed on
mainsince the render thread merged (#588), and still fail onmain@aa95d35f, somainis red for everyone before a release candidate. The renderer is right in both; the checks read its source by text and no longer match it. No issue was open for them; none of the open pull requests or claims in the team chat covers them. (A third,test_vram_budget_row, was repaired here too untilmainremoved that check with the VRAM budget row in #735, so it has left this PR.)How to reproduce
Seen on: Linux (Ubuntu 24.04), no GPU; g++ 13.3 and clang 23.1.5
Settings and switches: none;
LONGSHOT_VULKAN_HEADERSset for the runnerSteps: on
mainaa95d35f, runpython -I -B tests/run_all.py test_env_on test_readback_lateExpected: both pass, as they did on
546dc212, the commit before #588Actual: both fail:
test_env_onnamesRX_VK_PRESENT_AFTER_SIGNAL (gpu/vk/vk_replay.cpp:5788)as read set-means-on;test_readback_latesaysthe readbacks are noted by range without RX_VK_LOG_READBACK_RANGESWhat changed
Test-only: each check is brought in line with the source #588 merged, and neither is made looser than the rule it states. No product file changes.
tests/test_env_on.py: a line that also asksenv_on(name)reads the switch's value, as a line with a secondgetenv(name)already did. #588 readsRX_VK_PRESENT_AFTER_SIGNALasgetenv(x) ? env_on(x) : gate_on(), where 0 is off. A plaingetenv(x) ? true : ...on that line still fails the check (tried).tests/test_readback_late.py:invalidate's by-range notes are a braced block since #588 (rb_range_noteand the newrb_range_age); the check matchesif (log_ranges) {and asks for both calls inside it.Measurements
Verdict: passes: both checks fail on
mainand pass on this branch, with g++ and with clang, in two interleaved rounds.Hardware: Linux (Ubuntu 24.04, kernel 6.8), x86-64, no GPU used; g++ 13.3.0, clang 23.1.5 (llvm-mingw's,
--target=x86_64-linux-gnu), Python 3.15Scene: no game: the game-free checks
Method: each check run alone with
--cxx g++and with clang, round 1 on main then this branch, round 2 the same again; failed runs counted per round (4 runs a round)How to reproduce:
python -I -B tests/test_env_on.py --cxx g++(andtest_readback_late.py; again with--cxx clang++) on each commitaa95d35fe5da29cbFlags and settings
None
Testing
Tested: on Linux, both checks with g++ and clang, failing on main
aa95d35fand passing here in two interleaved rounds; both pass at546dc212and fail at82886e89(#588's merge), which is what turned them red.test_env_onwas also run against a plantedgetenv("RX_VK_PRESENT_AFTER_SIGNAL") ? true : gate_on(), which it still reports. The full suite (python -I -B tests/run_all.py, Linux, g++,LONGSHOT_VULKAN_HEADERSset) ran once onmainaa95d35fwith this PR and the other open fixes from the same sweep merged locally (ac6a1e97, not pushed): 550 passed, 5 failed, 51 skipped. All five fail on cleanmainaa95d35ftoo:tests/test_make_game_cache.py,tests/test_crash_dialog.py(its repair, #626, needs one more line since #729),tests/test_options_budget_once.py,tests/test_mods_size_table.pyandtests/test_walk_key.py.Not tested: Windows: the change is to the checks' Python, the same on both systems. No game run: no product code changes.
Must be tested: None
Risks
What could break: only these two checks; a check that now passes something it should not. The rules kept are the ones each states.
Turning it off: revert the commit
Compatibility: Nothing changes
Checklist
Everyone
type(scope): description) of the status line's type.main. Onto main94abdd57(headd453f528) with no conflict, with the commit subjects made Conventional Commits, which CI's lint job now checks for every commit, on a base that has CI's config (#417); each commit's change is the same as before bygit patch-id. The commits named in this description are from before this rebase:e5da29cbis nowd453f528. Re-run on94abdd57:test_env_onandtest_readback_latefail on main94abdd57and pass here, with g++ 13.3 and clang 23.1.5.python -I -B tests/run_all.pypasses (any failure that also fails onmainis named).third_party/untouched (a new folder with aPROVENANCE.mdinstead).When it applies
Assisted-by:/Co-Authored-By:trailers.Rebased onto
mainaa95d35f(e5da29cb): #735 deletedtests/test_vram_budget_row.py, so its repair left this PR, which now fixes the two checks still red onmain,test_env_onandtest_readback_late.Both still fail on clean
mainaa95d35fand pass here, with g++ and clang, two interleaved rounds; title to update to "test(vk): the env_on and late readback checks match the render thread's source".7092582f34e5da29cbcbtest(vk): the env_on, VRAM budget row and late readback checks match the render thread's sourceto test(vk): the env_on and late readback checks match the render thread's sourcee5da29cbcbd453f528f5Rebased onto
main94abdd57(headd453f528), with no conflict; the commit subjects are now Conventional Commits, which CircleCI's lint job checks for every commit of a pull request (#417), and the base has the CI's config, which a fork's pull request needs at its own head. No other change: each commit's change is the same as before bygit patch-id.Re-run on
94abdd57:test_env_onandtest_readback_latefail on main94abdd57and pass here, with g++ 13.3 and clang 23.1.5. The description names the new commits.View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.