RX 480 with llvm 4.0.0svn_r290670, mesa git
Tested with linux 4.9 and 4.10-rc1, happens on both. Tested with ingame settings medium and highest, happens with both.
This apitrace hangs my GPU: https://haagch.frickel.club/files/stanley_linux.trace.xz
Dez 29 11:21:58 c-l kernel: [drm:amdgpu_job_timedout [amdgpu]] *ERROR* ring gfx timeout, last signaled seq=6391, last emitted seq=6394
Dez 29 11:21:58 c-l kernel: [drm] IP block:gfx_v8_0 is hung!
Created attachment 128688 [details]
Apparently this didn't attach correctly when I created the bug.
Thanks for reporting this.
I can reproduce the hang on rx 480 with latest mesa/llvm git.
It hangs at drawcall 674985.
I will investigate.
It's actually a regression in mesa, works fine with 13.0.2.
After bisecting, the first bad commit is:
Author: Marek Olšák <firstname.lastname@example.org>
Date: Sun Nov 13 18:41:43 2016 +0100
radeonsi: don't export ClipVertex and ClipDistance if clipping is disabled
This is the first user of optimized monolithic shader variants.
Cull distances can't be disabled by states.
Tested-by: Edmondo Tommasina <email@example.com>
Reviewed-by: Nicolai Hähnle <firstname.lastname@example.org>
But this doesn't seem to be actually related to the clip planes optimization because
if you replay the trace with R600_DUMP_SHADERS=y, it no longer crashes. If my understanding
is correct, it won't compile shaders asynchronously. Forcing num_compiler_threads = 1 in
si_pipe.c also "fixes" the hang.
This should fix it:
The game runs without hangs now. Thanks.
Fixed by: 3753dc896dfe98b246ba8b030aab27a9928533af