<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW --- - [BYT Bisected]X will shown garbage after resume from S3"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=71908#c27">Comment # 27</a>
              on <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW --- - [BYT Bisected]X will shown garbage after resume from S3"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=71908">bug 71908</a>
              from <span class="vcard"><a class="email" href="mailto:jbarnes@virtuousgeek.org" title="Jesse Barnes <jbarnes@virtuousgeek.org>"> <span class="fn">Jesse Barnes</span></a>
</span></b>
        <pre>I see the bug here too.  And this seems to work around the issue, but I don't
know why... are the GTT maps not set up properly at this point or something?

diff --git a/drivers/gpu/drm/i915/intel_fbdev.c
b/drivers/gpu/drm/i915/intel_fbd
index 284c3eb..695b574 100644
--- a/drivers/gpu/drm/i915/intel_fbdev.c
+++ b/drivers/gpu/drm/i915/intel_fbdev.c
@@ -322,7 +322,7 @@ void intel_fbdev_set_suspend(struct drm_device *dev, int
sta
         * been restored from swap. If the object is stolen however, it will be
         * full of whatever garbage was left in there.
         */
-       if (state == FBINFO_STATE_RUNNING && ifbdev->ifb.obj->stolen)
+       if (state == FBINFO_STATE_RUNNING && ifbdev->ifb.obj->stolen && 0)
                memset_io(info->screen_base, 0, info->screen_size);

        fb_set_suspend(info, state);</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 on the CC list for the bug.</li>
      </ul>
    </body>
</html>