<html>
    <head>
      <base href="https://bugs.freedesktop.org/">
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - screen corruption using SNA and TearFree on Intel GeminiLake"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=105720#c31">Comment # 31</a>
              on <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - screen corruption using SNA and TearFree on Intel GeminiLake"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=105720">bug 105720</a>
              from <span class="vcard"><a class="email" href="mailto:chris@chris-wilson.co.uk" title="Chris Wilson <chris@chris-wilson.co.uk>"> <span class="fn">Chris Wilson</span></a>
</span></b>
        <pre>(In reply to Clinton Taylor from <a href="show_bug.cgi?id=105720#c30">comment #30</a>)
<span class="quote">> (In reply to Chris Wilson from <a href="show_bug.cgi?id=105720#c28">comment #28</a>)
> > Make that DamageRegionAppend(&sna->front->drawable,
> > &sna->mode.shadow_region); for a quieter compiler.

> This makes a big difference to the green display (patch from <a href="show_bug.cgi?id=105720#c26">comment #26</a>) on
> the rotated display and a little difference on the normal display.

> I have also not replicated the issue yet on either display with
> DamageRegionAppend() added.</span >

It's the "either display" that keeps me worried. If it was just the rotated
one, the next step would be

diff --git a/src/sna/sna_display.c b/src/sna/sna_display.c
index 7fccb508..1c090946 100644
--- a/src/sna/sna_display.c
+++ b/src/sna/sna_display.c
@@ -9191,6 +9191,9 @@ void sna_mode_redisplay(struct sna *sna)
                                        RegionUnion(&damage, &damage,
&sna_crtc->crtc_damage);
                                sna_crtc->crtc_damage = new_damage;

+                               damage.extents = crtc->bounds;
+                               damage.data = NULL;
+
                                sna_crtc_redisplay(crtc, &damage, bo);
                                kgem_bo_submit(&sna->kgem, bo);
                                __kgem_bo_clear_dirty(bo);

to force the entire per-crtc bo to be regenerate on each update.

Oh well if DamageRegionAppend survives, at least we have a w/a. TBD if it's a
happy w/a.</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>