<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [ilk] Font and screen corruption in GTK+ applications"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=88584#c17">Comment # 17</a>
              on <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [ilk] Font and screen corruption in GTK+ applications"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=88584">bug 88584</a>
              from <span class="vcard"><a class="email" href="mailto:psychonaut@nothingisreal.com" title="Tristan Miller <psychonaut@nothingisreal.com>"> <span class="fn">Tristan Miller</span></a>
</span></b>
        <pre>(In reply to Orion Poplawski from <a href="show_bug.cgi?id=88584#c16">comment #16</a>)
<span class="quote">> Any progress here?  Anything that can be done to help?  This machine is
> becoming pretty unusable.</span >

If you follow the link to the openSUSE bug from my original report, you'll find
that two workarounds have been suggested (one from Stefan Dirsch in <a href="show_bug.cgi?id=88584#c5">Comment #5</a>
and one from Egbert Eich in <a href="show_bug.cgi?id=88584#c7">Comment #7</a>).  The first one seems to have worked
for me; the second one I haven't tested.

I reproduce Egbert Eich's comment here, as it contains technical information
which may be of use to the Intel driver developers:

<span class="quote">> I've chased this issue on Intel Ilk for weeks. This is the same gen
> as you have used for the log you posted on fd.o. I don't know which
> other GPUs you have used.

> I've been able to trace this to the 2D textures COGL uses to store
> glyphs and icons in (as sub-textures) called 'atlases': when a new
> object needs to be cached, COGLS tries to find room in the current
> atlas. If there is no room it tries to resize the atlas. If the
> maximum size of the texture is reached it creates a new 'atlas'.

> What I found was, that once the texture size exceeded 4kx4k (the
> i965_dri.so driver announces a max texture level of 14 - ie. a size
> of 8kx8k) the content got corrupted, ie some elemends got lost during
> copying. However, what I also found was that this depended on the
> blit mode used for atlases: the blit modes can be specified with the
> environment variable COGL_ATLAS_DEFAULT_BLIT_MODE - available
> settings are: 'texture-render'. 'framebuffer', 'copy-tex-sub-image',
> 'get-tex-data'. 'texture-render' is the default. Specifying any of
> the others made the issue go away for me.

> I've never gotten around to dump the opengl state and shaders used in
> this mode to generate a simple test case which would have allowed to
> debug the intel driver.

> The workaround I suggested to our customer was to set the environment
> variable:

> COGL_ATLAS_DEFAULT_BLIT_MODE=framebuffer

> in /etc/environment. This made things work for him

> You may want to give this a try as well.

> Please let me know if it does the job.</span ></pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the QA Contact for the bug.</li>
      </ul>
    </body>
</html>