<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Priority</th>
          <td>medium
          </td>
        </tr>

        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW --- - [r600g-evergreen] GPU hang in Stunt Rally (bisected)"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=76190">76190</a>
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>dri-devel@lists.freedesktop.org
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>[r600g-evergreen] GPU hang in Stunt Rally (bisected)
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Linux (All)
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>b.bellec@gmail.com
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>x86-64 (AMD64)
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>git
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>Drivers/Gallium/r600
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>Mesa
          </td>
        </tr></table>
      <p>
        <div>
        <pre>In Stunt Rally (v2.2.1), when applying specific graphic settings, the GPU hang
few seconds after a race is started.

This is since commit 7e414b58640aee6e243d337e72cea290c354f632
glsl: break the gl_FragData array into separate gl_FragData[i] variables
author: Marek Olšák
date: 2013-10-29 22:50:01 (GMT)

Easy steps to reproduce:
1- Download and extract the Linux game binary here:
<a href="http://sourceforge.net/projects/stuntrally/files/2.2.1/">http://sourceforge.net/projects/stuntrally/files/2.2.1/</a>
2- Launch the game with the shell script (./StuntRally-2.2.1-linux/stuntrally)
(it will launch a 64-bit binary on a 64-bit system)
3- Set the graphical settings to "Lowest", and close the game
4- Relaunch the game, and set this settings now:
      -> Graphics > Vegetation > "Trees multiplier" to 1.00 (in fact any value
but 0.0)
      -> Graphics > Vegetation > check "Use Impostors"
      -> Graphics > Vegetation > uncheck "Impostors Only"
      -> Effects > check "Effects enabled"
      -> Effects > check "Soft Particules"
5- Close and relaunch the game in order to be sure that these new settings are
applied
6- Start a "Single race", use the default one (track "I6-Flooded")

If one of these gfx settings is different, the GPU will not hang.

The last good commit (aec20d66d9d13e0acd6a7199b63e1383e1e9900a) doesn't hangs
the GPU when these settings are applied.

R600_DEBUG=nosb doesn't solve the issue.

I also tested with RV770 and there is no problem (expect rendering bugs for
some things but not sure this commit is the problem in that case).

I tried to test with nouveau too (nv40 driver on a NV49/7900GT) but the game
crash at start (segfault), with git master or even with the commit aec20d66d9).

Note that the game Stunt Rally have many graphical settings available, I don't
know if all are very well handled by mesa. Game bugs or mesa "bugs"... I don't
know.

Config:
Fedora 19 x86-64
kernel 3.13.5-103.fc19.x86_64
libdrm 2.4.50
AMD CYPRESS (Radeon HD5870 with 1GB VRAM)

Build:
./autogen.sh --with-gallium-drivers=r600,nouveau --with-dri-drivers=
--enable-texture-float --disable-dri3 --disable-r600-llvm-compiler
--disable-gallium-llvm --enable-64-bit CFLAGS="-O0 -g -m64" CXXFLAGS="-O0 -g
-m64" --libdir=/usr/lib64</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>