<html>
    <head>
      <base href="https://bugs.freedesktop.org/">
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED FIXED - [apitrace] Graphical artifacts in Civilization VI on RX Vega"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=104602#c20">Comment # 20</a>
              on <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED FIXED - [apitrace] Graphical artifacts in Civilization VI on RX Vega"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=104602">bug 104602</a>
              from <span class="vcard"><a class="email" href="mailto:cwabbott0@gmail.com" title="Connor Abbott <cwabbott0@gmail.com>"> <span class="fn">Connor Abbott</span></a>
</span></b>
        <pre>I wanted to make sure that improving the NIR path to reach parity with TGSI in
local variable handling wouldn't break things, so I investigated this a bit
more. It seems this is triggered by the fact that on Vega the TGSI path always
uses scratch, even for smaller local arrays. This bloats the scratch space used
by the VS in question. There are three back-to-back draw calls with this VS
(used to build up the map), each using scratch, and it seems that radeonsi
doesn't properly wait for each call to be done before starting the next and
reuses the same scratch buffer, resulting in the threads from one draw call
overwriting the scratch of the previous call. Hacking
si_update_spi_tmpring_size() to always allocate a new scratch buffer "fixes"
the black triangles.</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>