<html>
    <head>
      <base href="https://bugs.freedesktop.org/">
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [SKL, KBL] texture misrender in The Talos Principle"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=96624#c11">Comment # 11</a>
              on <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [SKL, KBL] texture misrender in The Talos Principle"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=96624">bug 96624</a>
              from <span class="vcard"><a class="email" href="mailto:sergii.romantsov@globallogic.com" title="Sergii Romantsov <sergii.romantsov@globallogic.com>"> <span class="fn">Sergii Romantsov</span></a>
</span></b>
        <pre>Created <span class=""><a href="attachment.cgi?id=139842" name="attach_139842" title="Workaround for trace Talos_flicker3_trim2.trace.xz">attachment 139842</a> <a href="attachment.cgi?id=139842&action=edit" title="Workaround for trace Talos_flicker3_trim2.trace.xz">[details]</a></span> <a href='page.cgi?id=splinter.html&bug=96624&attachment=139842'>[review]</a>
Workaround for trace Talos_flicker3_trim2.trace.xz

Investigation was done with trace
<a href="https://drive.google.com/file/d/0Bz8fw_SGGDzsbk81T0hKMFo1V2s/view?usp=sharing">https://drive.google.com/file/d/0Bz8fw_SGGDzsbk81T0hKMFo1V2s/view?usp=sharing</a>
Workarounds (standalone):
1. Only for that trace (helps not for all cases, so sometimes still problem
will happen): 96624_wa.diff
2. To use LIBGL_ALWAYS_SOFTWARE=true (swrast)

More investigations:
1. Used simplified shaders for program 1496 (vertex shader 1286, fragment
shader 1296):
1.1. VS_f5145e822d6ab91eba69ffa69464742d03d0545a.glsl:
  - Left computation of vVexPosAbs
  - Assign vMaskLightUV.xy by vLightUV.xy
  - Avoid any more computations
1.2. FS_a6439012ab28d0bb9cc17c615c9b0487158f9cb1.glsl:
  - Use vMaskLightUV.xy to compute vOutColor.rgb
  - Avoid any more computations
2. Used array buffers:
2.1. 254490 @0 glBindBuffer(target = GL_ELEMENT_ARRAY_BUFFER, buffer = 1139)
2.2. 254517 @0 glBindBuffer(target = GL_ARRAY_BUFFER, buffer = 1140)

2. Final observation:
2.1. For vertex shader data in array vLightUV are invalid.
2.2. Reading of data by DRM_IOCTL_I915_GEM_PREA (for buffers 1139 and 1140) on
differnet stages shows that data in arrays are not changed.

3. Temporal conclusion:
3.1. Or some invalid offsets/addresses computed
3.2. Or before glDraw*-calls missed some flushing/caching/command

4. Questions:
4.1. Is it possible to debug by which address vertex shader reads vLightUV?
4.2. Any more ideas?</pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are the QA Contact for the bug.</li>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>