Bug 93353

Summary: GRID Autosport crash on loading screen with an HD 6950
Product: Mesa Reporter: serge <serge.yquel>
Component: Drivers/Gallium/r600Assignee: Default DRI bug account <dri-devel>
Status: RESOLVED MOVED QA Contact: Default DRI bug account <dri-devel>
Severity: blocker    
Priority: medium CC: v10lator
Version: git   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments: GRID Autosport crash report
crash on launch of the game
crash on benchmark
crash before the race

Description serge 2015-12-11 17:04:55 UTC
Created attachment 120465 [details]
GRID Autosport crash report

Hello,

On loading screen just before starting a race, the game crash to the desktop with this on the terminal:

EE r600_shader.c:182 r600_pipe_shader_create - translation from TGSI failed !
EE r600_state_common.c:826 r600_shader_select - Failed to build shader variant (type=1) -1

i added a crash report from the game .dmp, if it can help.



it was working on low setting with a previous version of mesa, i don't know the exact version number but it was just before r600 add full support for OpenGL 4.1 and probably the tesselation. 


Here are the information about the version i currently use and make the game crash just before the race start:

VGA: Advanced Micro Devices, Inc. [AMD/ATI] Cayman PRO [Radeon HD 6950]
Driver: r600
direct rendering: Yes
OpenGL vendor string: X.Org
OpenGL renderer string: Gallium 0.4 on AMD CAYMAN (DRM 2.43.0, LLVM 3.8.0)
OpenGL core profile version string: 4.1 (Core Profile) Mesa 11.2.0-devel (git-369afdb)
OpenGL core profile shading language version string: 4.10
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
    GL_ARB_direct_state_access, GL_ARB_draw_buffers, 
    GL_ARB_draw_indirect, GL_ARB_draw_instanced, 
    GL_ARB_map_buffer_range, GL_ARB_multi_bind, GL_ARB_multi_draw_indirect, 
OpenGL version string: 3.0 Mesa 11.2.0-devel (git-369afdb)
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL ES profile version string: OpenGL ES 3.0 Mesa 11.2.0-devel (git-369afdb)
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.00
Comment 1 serge 2015-12-11 17:27:53 UTC
i also have this on another try:
 
EE r600_shader.c:182 r600_pipe_shader_create - translation from TGSI failed !
EE r600_state_common.c:826 r600_shader_select - Failed to build shader variant (type=1) -1
EE r600_shader.c:429 tgsi_is_supported - unsupported src 1 (file 0, dimension 1)
EE r600_shader.c:182 r600_pipe_shader_create - translation from TGSI failed !
EE r600_state_common.c:826 r600_shader_select - Failed to build shader variant (type=4) -22
Comment 2 Jürgen Scholz 2015-12-11 17:35:58 UTC
This could be related to the report just filed by me:
https://bugs.freedesktop.org/show_bug.cgi?id=93352
Comment 3 Ilia Mirkin 2015-12-11 22:02:56 UTC
You might try running with ST_DEBUG=tgsi -- should show the failing shaders. Make sure you're on a debug build. MESA_GLSL=dump should be interesting too. [Sadly there's a 4k limit on the dumped shader code size which is likely too short for a lot of shaders...]
Comment 4 serge 2015-12-12 14:08:42 UTC
it look like to hapened at shader compiling time.

Each time i have a crash there are new shaders in the bin directory of the game.

And then after some crash i have all the shaders needed by the game to play the race, but the game is still crashing on benchmark and totally freeze the computer on replay with the cockpit view.

i made 3 differents attachements, i hope there is something interesting with them.
Comment 5 serge 2015-12-12 14:09:48 UTC
Created attachment 120482 [details]
crash on launch of the game
Comment 6 serge 2015-12-12 14:10:30 UTC
Created attachment 120483 [details]
crash on benchmark
Comment 7 serge 2015-12-12 14:11:22 UTC
Created attachment 120484 [details]
crash before the race
Comment 8 Ilia Mirkin 2015-12-13 16:51:33 UTC
The errors relating to r600 indicate it's having trouble converting some TGSI shader. However those don't appear to be printed without --enable-debug. I've pushed out a fix for another assertion, so try a mesa git head build (make sure it includes commit eca8f38dcffb7), with --enable-debug, and run with ST_DEBUG=tgsi -- that should hopefully show which shader r600 is having trouble compiling.
Comment 9 serge 2015-12-14 12:47:21 UTC
Yesterday after compiling mesa with your commit, all was working fine on the lowest setting, but it was still crashing with cockpit view on replay with low setting.

This morning i made another mesa compilation because it was missing --enable-debug and now the game stop at launch screen with:

error at : SETGE_INT     R7.x.2F@R124.y,    R6.z.2||FP@R3.z, 4.2039e-45|00000003
  : operand value R6.z.2||FP@R3.z was not previously written to its gpr
error at : ADD_INT     R27.x.2||FP@R2.x,    R6.z.2||FP@R3.z, 4.2039e-45|00000003
  : operand value R6.z.2||FP@R3.z was not previously written to its gpr
error at : (copy) MOV     t20||FP@R4.x,    R6.z.2||FP@R3.z
  : operand value R6.z.2||FP@R3.z was not previously written to its gpr
sb/sb_ra_checker.cpp:46:run: Assertion `sh.errors.empty()' failed.
/media/sdc2/SteamLibrary/SteamApps/common/GRID Autosport/GridAutosport.sh : ligne 19 : 31901 Trappe pour point d'arrêt et de trace              (core dumped)"${GAMEROOT}/bin/GridAutosport" $@


There is 5 new commit since yours and one have modification on shaders so maybe it's related.
Comment 10 serge 2015-12-14 18:20:18 UTC
I think it's not related at all with other commits, after reverting back is still not launching anymore.

I found that with R600_DEBUG=nosb the game launch and do not crash with any setting i choose.
Comment 11 Thomas Rohloff 2015-12-15 17:58:53 UTC
(In reply to serge from comment #10)
> I found that with R600_DEBUG=nosb the game launch and do not crash with any
> setting i choose.

With this setting I was finally able to complete the games benchmark! :)

(In reply to Ilia Mirkin from comment #8)
> that should hopefully show
> which shader r600 is having trouble compiling.

Maybe it would be a good idea for you to take the offer from https://bugs.freedesktop.org/show_bug.cgi?id=93352#c20 ("Please let us know if we can assist by providing people working on driver issues a copy of the title") - I'm sure this will speed up debugging a lot.
Comment 12 Ilia Mirkin 2015-12-15 18:48:33 UTC
(In reply to Thomas Rohloff from comment #11)
> Maybe it would be a good idea for you to take the offer from
> https://bugs.freedesktop.org/show_bug.cgi?id=93352#c20 ("Please let us know
> if we can assist by providing people working on driver issues a copy of the
> title") - I'm sure this will speed up debugging a lot.

Not that this is the proper channel for this, but I replied to that offer here:
http://lists.freedesktop.org/archives/mesa-dev/2015-December/103085.html
Comment 13 GitLab Migration User 2019-09-18 19:20:14 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/mesa/mesa/issues/562.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.