Linux AMD RADV (RX 6650 XT, Mesa 26.2.6): GPU reset as soon as the world loads — comp_1.3.0 → gfx_0.0.0 timeout, MODE1 reset, Wayland session lost (same fingerprint as #2245) #2590
Labels
No labels
accessibility
autorelease: pending
autorelease: tagged
bug
dependencies
documentation
duplicate
enhancement
github_actions
good first issue
help wanted
invalid
question
testing wanted
wontfix
No milestone
No assignees
1 participant
Due date
No due date set.
Dependencies
No dependencies set
Reference
MagicBeanDev/Hookshot#2590
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
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?
Hookshot version
v2.1.0 (source e561602e), Linux AppImage
What kind of problem
Crash, freeze or black screen
What happened
Every session ends with a GPU hang the moment the world/map loads. The in-game
menu and the loading screens never crash: the reset arrives with the first frames
of the world, when the texture/shadow/pipeline burst happens.
The kernel performs a full MODE1 reset ("VRAM is lost due to GPU reset!") and the
Wayland session dies with it (Hyprland aborts in
CHyprOpenGLImpl::beginrightafter the VRAM loss). This is not the game window crashing: the GPU is reset.
This is the same defect already reported in #2245 (RX 6600 XT / RX 6800 / Steam
Deck). The log carries the identical fingerprint line:
Same program hash, same stage, same binding address, same size, and the same
precursors (
a capture's wait for write-back … timed out, ~250 msmemory syncsubmits). New data point: Navi 23 / RX 6650 XT, Mesa 26.2.6, kernel 7.2.14.
Where in the game
Right after the world/map loads and gameplay starts. The in-game menu and the
loading screens are fine. Not tied to a cutscene (unlike #2245, which happened
before the Great Deku Tree appears).
How often
Every time — every single session, without exception.
Graphics card and driver version
CPU, RAM and operating system
Changes from the defaults
The crashing runs were stock: no
RX_VK_*variables, andmesh_shaders=0(Automatic), which the log resolves to
mesh shaders row: Automatic (native).The session that works differs in exactly one line:
Other relevant values, unchanged in both:
quality_preset=0,output_res=1920x1080,resolution=3,descriptor_reuse=1,sampler_cache=0,robust_buffers=0,frame_generation=0,dlss=3.Other software hooked into the game
No overlays (no MangoHud, no Gamescope, no vkBasalt), no wrappers. Launched from
the builder's desktop shortcut (AppImage
--launch <game folder>).hookshot_log.txt
Full log: linked at the end of this report (a gist with
hookshot_log.txt,256 KB, no game files). Note: it contains two boots of the game (the second
boot:isat line 844); the second one is the one that hung. The 55m44s of the systemd scope
is process lifetime — menu, shader preparation and two boots — not gameplay time.
Tail before the reset:
Last memory block reported before the hang:
Kernel side (
journalctl -k), same second:Note the shape: the compute ring times out first and its ring reset succeeds,
while the gfx ring reset fails and forces the MODE1 reset — the same
"gfx ring and RADV gang compute ring stuck waiting on each other" shape described
in #2245.
Workaround confirmed on this card:
mesh_shaders=2(Compute)With
mesh_shaders=2the log says, at start-up:Result (same GPU, same driver, same build, map loaded and played):
journalctl -ksince start: 0ring … timeout, 0GPU reset begin,0
VRAM is lost(budget 3445 MB). The working session uses more VRAM than the crashing one
(1283 MB used, ~2.3 GB of textures), so this is not a VRAM-exhaustion bug.
are built as compute), so "preparing shaders" takes longer, and fps varies with
the scene.
Not a fix, and not my finding: this is DuxMuxxy's workaround from #2245,
confirmed upstream by Fortich on RX 6800 XT. I am adding the Navi 23 data point.
For diagnosis only, not part of the workaround:
hookshot_env.txtwithRX_VK_CHECKPOINTS=1(VK_AMD_buffer_markerbefore each draw and dispatch).Ruled out
there is no
vkAllocateMemoryfailure anywhere, and the crashing log neverwent past ~2.4 GB of textures on an 8 GB card.
(Switch 2 emulator, Vulkan) on this same GPU with zero amdgpu faults. In the
same boot, SharpEmu (PS5, 22.4 GB peak) and local-LLM inference on the GPU also
ran without a single reset. Only Hookshot resets the GPU.
and the compute ring reset succeeds while the gfx one fails.
Next steps I can provide
native(mesh_shaders=0) run withRX_VK_CHECKPOINTS=1to name the lastprogram/dispatch before the hang, plus the amdgpu devcoredump (waves stuck vs
VM page fault), if that helps PR #2362/#2311.
Before you send it
Full
hookshot_log.txt(256 KB, no game files): https://gist.github.com/TuxArchi/dd6eec29b8212b500be0b9fcfc7bdf11Thanks for the report. Reports of the same kind are collected in #1000, which lists this one with your details and links back here, so one fix closes them together. Follow #1000 for the fix and add new details there (or here). If this turns out to be separate it will be reopened.