<html>
    <head>
      <base href="https://bugs.freedesktop.org/">
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - FS-UAE waits forever with glClientWaitSync() when using glFenceSync() on amdgpu/radeonsi"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=97461">97461</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>FS-UAE waits forever with glClientWaitSync() when using glFenceSync() on amdgpu/radeonsi
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>Mesa
          </td>
        </tr>

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

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

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

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

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

        <tr>
          <th>Priority</th>
          <td>medium
          </td>
        </tr>

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

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

        <tr>
          <th>Reporter</th>
          <td>lem.jjr@gmail.com
          </td>
        </tr>

        <tr>
          <th>QA Contact</th>
          <td>dri-devel@lists.freedesktop.org
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Created <span class=""><a href="attachment.cgi?id=125993" name="attach_125993" title="apitrace of fs-uae waiting forever after using glFenceSync()">attachment 125993</a> <a href="attachment.cgi?id=125993&action=edit" title="apitrace of fs-uae waiting forever after using glFenceSync()">[details]</a></span>
apitrace of fs-uae waiting forever after using glFenceSync()

Hi,

In recent mesa-git (during August 2016), there was a change to amdgpu/radeonsi
that has caused FS-UAE (Amiga emulator) to wait forever with glClientWaitSync()
after using glFenceSync(). While it is waiting, it uses 24% CPU but does not
cause the CPU to clock to higher pstates. Using an alternative OpenGL rendering
mode that does not include fences allows FS-UAE to start as expected. This
problem is not present on nVidia, AMDGPU-PRO, nor open source amdgpu as shipped
with Ubuntu 16.04, and has only been a problem during this month (August 2016).

Hardware:
AMD FX-8350
AMD Radeon 380X 4Gb
Asus MG279 27" 2560x1440 144Hz IPS, connected via DisplayPort

Software:
Ubuntu 16.04 AMD64
Padoka PPA
FS-UAE 2.7.14dev2 from <a href="https://launchpad.net/~fengestad/+archive/ubuntu/devel">https://launchpad.net/~fengestad/+archive/ubuntu/devel</a>


Notable apitrace output on frame number 3 of a waiting instance of fs-uae (from
the attached apitrace file):

1490 @0 glFenceSync(condition = GL_SYNC_GPU_COMMANDS_COMPLETE, flags = 0) =
0x8aba220
1491 @0 glFlush()
1492 @0 glClientWaitSync(sync = 0x8aba220, flags = GL_SYNC_FLUSH_COMMANDS_BIT,
timeout = 0) = GL_TIMEOUT_EXPIRED
1493 @0 glClientWaitSync(sync = 0x8aba220, flags = 0x0, timeout = 0) =
GL_TIMEOUT_EXPIRED
.....
15561 @0 glClientWaitSync(sync = 0x8aba220, flags = 0x0, timeout = 0) =
GL_TIMEOUT_EXPIRED


I suspect this will be related to the fences work that has been committed
recently?

Happy to do more testing. I have also reported the bug in the FS-UAE
development thread here:
<a href="http://eab.abime.net/showpost.php?p=1107609&postcount=1146">http://eab.abime.net/showpost.php?p=1107609&postcount=1146</a>

In case it's helpful at this point:

OpenGL vendor string: X.Org
OpenGL renderer string: Gallium 0.4 on AMD TONGA (DRM 3.1.0 /
4.4.0-34-lowlatency, LLVM 4.0.0)
OpenGL core profile version string: 4.3 (Core Profile) Mesa 12.1.0-devel -
padoka PPA
OpenGL core profile shading language version string: 4.30
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 3.0 Mesa 12.1.0-devel - padoka PPA
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL ES profile version string: OpenGL ES 3.1 Mesa 12.1.0-devel - padoka PPA
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.10


Cheers</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>